我想使用此论坛中的一些脚本进行多次上传。
脚本完美无缺,但是当我将它与我的项目合并时。
javascript无法获取我元素的值。
我发现问题是因为我在页面中有很多ID PANEL,我需要更改为getElementByID('<%="FileUpdate.ClientID%>').value
(原始:getElementByID("FileUpdate").value
)
问题是:
我必须使用计数器,例如:getElementByID('<%="txtFileUpdate' + counter + '%>').value
但它失败了。
错误说“字符文字中的字符太多”指向该行。
请有人帮忙,有没有解决这个问题的方法?
这是脚本
-----&GT;错误“字符文字中的许多字符”
<script type="text/javascript" language="javascript">
var counter = 1;
function AddFileUpload() {
if (counter < 5) {
counter++;
var div = document.createElement('DIV');
div.innerHTML = '<input id="FileUpload' + counter + '" name = "file' + counter +
'" type="file" />' +
'<input id="Button' + counter + '" type="button" ' +
'value="Remove" onclick = "RemoveFileUpload(this)" />';
document.getElementById("FileUploadContainers").appendChild(div);
}
else {
alert("Cannot attach more than 5 file");
}
}
function GetFile() {
var temp;
var error = "";
var stringx = "";
var exCounter = 1 ;
for (exCounter; exCounter <= counter; exCounter++) {
-----> stringx = document.getElementById('<%=FileUpload'+exCounter+'.ClientID%>').value;
if (stringx != "")
temp += stringx + "#;";
else
error += exCounter + ", ";
}
if (error != "") {
alert("Field " + error + " Still Empty");
return;
}
document.getElementById('<%=HiddenField1.ClientID%>').value = temp;
}
答案 0 :(得分:0)
试试这个:
getElementByID('FileUpdate<%=counter%>').value
或
getElementByID('<%=txtFileUpdate + counter.ToString()%>').value