日期:2014-05-16  浏览次数:20550 次

js函数内数组不能赋值
getName()函数如果如果只写url[0] 程序正常,如果再写下面的url[1]到url[4]则他们不能赋值也许可能就没有执行下面的语句,T()函数内接收getName()函数返回的数组的写法对吗?
<script type="text/javascript">
function getName(){
var url=new Array();
var para=new Array();
url[0]=document.getElementsById("picture1").value;
url[1]=document.getElementsById("picture2").value;
url[2]=document.getElementsById("picture3").value;
url[3]=document.getElementsById("picture4").value;
url[4]=document.getElementsById("flash").value;

for(i=0;i<5;i++){
if(url[i].lastIndexOf("\\")>0){
para[i]=url[i].substring(url[i].lastIndexOf("\\")+1,url[i].length);
 
}else{
para[i]=null;
 
}

}

return para;

}

function T(){

var pictureName=new Array();
pictureName=getName();

}
</script>
</head>
<body>

<div id="d">
<form action="jsp/delxw.jsp" method="post">
<div class="div1">
<label>页面简称</label><input type="text" id="abbreviation" />
</div>
<div class="div1">
<label>编辑页面名称</label><input type="text" id="sign" />
</div>
<div class="div1">
<label>页面内部标题</label><input type="text" id="etitle" />
</div>
<div class="div1">
<label>项目名称</label><input type="text" id="title" />
</div>

<div class="div1">
<label>图片1</label><input type="file" id="picture1" />
</div>
<div class="div1">
<label>图片2</label><input type="file" id="picture2" />
</div>
<div class="div1">
<label>图片3</label><input type="file" id="picture3" />
</div>
<div class="div1">
<label>图片4</label><input type="file" id="picture4" />
</div>
<div class="div1">
<label>flash</label><input type="file" id="flash" />
</div>
<div class="div1">
<label>链接</label><input type="text" id="lianjie" />
</div>
<div class="div1">
<label>详细内容</label><textarea id="detail"></textarea>
</div>
<div class="div1">
<input type="button" value="提交" onclick="T()" />
<!--<input type="image" src="images/tijiao.jpg" onmousedown="this.src='images/tijiaod.jpg'" onmouseup="this.src='images/tijiao.jpg'" onclick="getPictureName()" />-->
</div>
</form>
</div>
</body>

------解决方案--------------------
你自己写得T()是没有问题的,但是getName()中的"getElementsById"有错误,应该是"getElementById",你的多了一个“s”,以下是我测试的,你的代码没有问题,就是这一处错误:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>


<script type=&qu