1

我从数据库中获得了一组禁用的文本框。当我单击编辑按钮时,它应该启用数组中的所有文本框。但我只能启用第一个文本框。这是代码。

编辑按钮代码:

<input type="button" value="Edit" onclick="enable();" />

函数启用()

function enable(){
document.getElementById("instance_name").disable = false;
document.getElementById("host_name").disable = false;
}

大批:

$result=mysql_query("SELECT user_instance.instance_name, user_instance.host_name FROM
dba_account, user_instance WHERE dba_account.account_id = user_instance.account_id AND 
dba_account.account_id = '$accid'");

while($note = mysql_fetch_array($result))
{
<inut type='text' name='instance_name' id='instance_name' disabled='disabled' 
value='$note[instance_name]' size='25' />
<input type='text' name='host_name' id='host_name' disabled='disabled' 
value='$note[host_name]' size='25' />
}

我得到了所有禁用的文本框,但我无法全部启用它们。感谢你的帮助。

4

1 回答 1

1

您为多个元素提供相同的 ID。每个 ID 只能对一个元素唯一,因此一旦 javascript 找到第一个 ID,它就会停止。我会给它一个class="instance_name",然后按类获取元素。你可以这样做:

function enable(){
    Array.prototype.forEach.call( document.getElementsByClassName('instance_name'), 
                                  function(element){
                                      element.removeAttribute('disabled');
                                  });
}
于 2012-06-29T18:30:30.317 回答