dot*_*dot 1 html javascript jquery
我有一个网页,其中包含两个表格...... <DL>
<dl>
<form action="" method="POST" style="display:inline-block;">
<dl><dt></dt><dd><input class="submit" type="submit" value="Create TEST" style="width: 15em;"></dd></dl>
</form>
<form action="" method="POST" style="display:inline-block;">
<dl><dt></dt><dd><input class="submit" type="submit" value="Create TEST2" style="width: 15em;"></dd></dl>
</form>
</dl>
Run Code Online (Sandbox Code Playgroud)
我需要找到两个按钮并为它们分配ID.
这是我到目前为止所拥有的:
//find the two create buttons and assign ids
$('body FORM:contains("Create TEST")').contents().each(function () {
var exp = /Create TEST/;
if (this.nodeValue && exp.test(this.nodeValue)) {
var $createoutrule = this;
$createoutrule.attr('id',"id123");
return
};
});
Run Code Online (Sandbox Code Playgroud)
但它不起作用......你能告诉我我做错了什么吗?我要google .contents()以确保我理解它应该如何/应该返回...
谢谢.
:contains寻找文本内容.
您的选择器可以更简单:
$('input[type=submit][value^="Create TEST"]')...
Run Code Online (Sandbox Code Playgroud)
......这意味着"一个input有type "submit"其值属性开头 "Create TEST" ".
要id为它们添加值(请注意它们必须是两个不同的 id值,因为ids 在页面上必须是唯一的),然后:
$('input[type=submit][value^="Create TEST"]').each(function(index) {
this.id = "id" + index; // Will be "id0" then "id1"
});
Run Code Online (Sandbox Code Playgroud)
当然,由于你已经使用了上面代码的按钮,你可能不再需要为id它们赋值了,你可以随后id在上面的代码中使用s 做任何你将要做的事情.但是如果你的用例需要ids,上面就会这样做.
如果这些值只是占位符,则适用相同的一般原则:如果两者都以相同的文本开头,则可以使用上面的attribute-starts-with选择器 ; 如果没有,还有attribute-ends-with选择器,属性包含选择器,......
| 归档时间: |
|
| 查看次数: |
96 次 |
| 最近记录: |