我有这个功能:
function incolla(){
var array=document.getElementsByTagName("input");
console.log(array);
var dim1=array.length;
var dim=arguments.length;
for(var i=0, ; i<dim1-1 ; i++,){
if(i>=3){
array[i].value=arguments.pop();
}
}
}
那应该将数据粘贴到表单中:
<td align="center">
<br>
<input type="text" id="risposta_4_0" name="risposta_4_0" size="2" onchange="javascript: setRespons2(4,0, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_1" name="risposta_4_1" size="2" onchange="javascript: setRespons2(4,1, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_2" name="risposta_4_2" size="2" onchange="javascript: setRespons2(4,2, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_3" name="risposta_4_3" size="2" onchange="javascript: setRespons2(4,3, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_4" name="risposta_4_4" size="2" onchange="javascript: setRespons2(4,4, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_5" name="risposta_4_5" size="2" onchange="javascript: setRespons2(4,5, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_6" name="risposta_4_6" size="2" onchange="javascript: setRespons2(4,6, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_7" name="risposta_4_7" size="2" onchange="javascript: setRespons2(4,7, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
<input type="text" id="risposta_4_8" name="risposta_4_8" size="2" onchange="javascript: setRespons2(4,8, this.value)" style="border:2px #444444 solid; background-color:#ffffff">
只有运行网站的scirpt不会获取.value的值,而是通过其他参数,我该如何解决这个问题呢?
答案 0 :(得分:0)
arguments对象不是Array。它类似于数组,但是 除了length之外没有任何Array属性。例如,确实如此 没有pop方法。但是它可以转换为真正的数组:
var args = Array.prototype.slice.call(arguments);
因此,您希望将javascript方法更新为:(JSFiddle)
function incolla(){
var args = Array.prototype.slice.call(arguments);
var array=document.getElementsByTagName("input");
console.log(array);
var dim1=array.length;
var dim=args.length;
for(var i=0; i<dim1-1; i++){
if(i>=3){
array[i].value = args.pop();
}
}
}
答案 1 :(得分:0)
问题不在于只有网站系统不允许通过.value添加正确加载值,同样的事情发生在我身上的另一种形式(总是在同一个站点),其中有单选按钮做的。点击系统无法识别它们,