我试图在一行中选择特定的元素类型并更改它们的属性,特别是id和name属性。
使用以下工作可以很好地用于单行文本输入框:
$('input:text', newRow).attr('id','os' + newRowNum ).attr('name','os' + newRowNum );
然而,当我将html更改为:
时<td><textarea name="os2" cols="24" rows="3" id="os2"></textarea></td>
脚本将不再找到属性并更改它们。 textarea是一个输入元素......不是吗?
我也尝试过:
$('input:text, textbox', newRow).attr('id','os' + newRowNum ).attr('name','os' + newRowNum );
和
$('input[type=text], textbox', newRow).attr('id','os' + newRowNum ).attr('name','os' + newRowNum );
但都不起作用。
我在这里缺少什么?
答案 0 :(得分:2)
您需要将选择器更改为:
$('textarea', newRow).attr('id','os' + newRowNum ).attr('name','os' + newRowNum );
答案 1 :(得分:1)
<textarea>
元素与:text
选择器不匹配。
这不起作用,因为<textarea>
不是<textbox>
。
$('input:text, textbox', newRow)
所以这应该有效:
$(":text, textarea", newRow)...
答案 2 :(得分:0)
不完全是。
$('input:text')
将专门查找<input>
标记。
您可能需要考虑:
$('textarea') ...