我有6个“textboxex”和一个带有它们的数组。
<input id="slot0" type="text" />
id从0到5,也是名为"slotarray"
的数组。我希望arrray和textboxes与slotarray[0]
等绑定input id="slot0"
。
首先我需要的函数将在数组中找到第一个空字段(无论相应的文本框是否为空 - 但应该)并将字符串放入(短字符串 - 短代码如“abc”或“sp1”)。
此函数还需要使用长字符串填充绑定的文本框。
如果slotarray[2] == 'abc'
然后ID中的号码相同(此处为id="slot2"
),则需要包含“Abrasive Brilliant Conexant”等长字符串。
我在这里得到了什么
<a href="#" onclick="populate('abc','Abrasive Brilliant Conexant');"> click to populate </a>
然后功能
function populate(shortstring,longstring) {
for (var i=0; i<6; i++) {
if (slotarray[i] == '') {
slotarray[i] = shortsrting;
slotid = 'slot' + i;
document.getElementById(slotid).value = longstring;
break;
}
}
}
在创建时清除:{Array('','','','','','')
)和文本框.value='';
,其工作正常。
但后来我发现我需要清除文本框和绑定数组字段的功能。并非只有一个特定的一个clic。所以我开始编写
而不是6个函数<a href="#" onclick="clear(0,'slot0');"> clear this field </a>
对于每个文本框,具有不同的数字和ID,以及清除功能:
function clear(arrayid, slotid) {
slotarray[arrayid] = '';
document.getElementById(slotid).value = '';
}
但是这个函数不会清除文本框和数组。我看到文本框有文本,我知道数组没有被清除,因为第一个函数可以找到第一个空对象......
我在这里做错了什么?它定义为“空”/“清除”提交/文本框?也许我需要使用更复杂的条件?也许这是别的东西。 也许我不需要数组(我可以设法摆脱短代码),只是让函数只在文本框上工作?
好的 - 我用这个准备了jsfiddle demo,但即使填充也不起作用..
答案 0 :(得分:2)
您不能使用关键字clear,因为它引用了(已弃用的)函数document.clear;所以尝试更改“清除”功能的名称。
答案 1 :(得分:1)
好的,无论你写的什么都没关系。 Just change to way
你打电话给你的javascript。
这是jsfiddle:http://jsfiddle.net/BYt49/20/