我有一个在我的一个页面上多次应用的ID(我使用了多个重复的ID,因为我还应用了一个类来确定图标是否是某种颜色,而不是只复制每个按钮颜色的id css )。我正在使用一个jquery表单处理程序,它在表单提交时启动,我想在提交按钮中添加一个属性,但由于在同一页面上有另一个具有相同ID的按钮,我很难让它工作。有没有办法按父表单的id选择输入?
例如(我知道这是错的,但这是我想要实现的,在这个例子中很重要)
$("form#invite").submit(function() {
$(this).("#buttonid").attr({ disabled:true, value:"Sending..." });
答案 0 :(得分:1)
这应该可以解决问题。
$("form#invite").find("#buttonid").attr({ disabled:true, value:"Sending..." });
答案 1 :(得分:1)
你应该真的想找到一种方法来保持id的独特性。就像使用类名或根本不命名它们一样。在任何情况下,这里都是你的答案问题:
$("form#invite").submit(function() {
$(this).find("#buttonid").attr({ disabled:true, value:"Sending..." });
}
答案 2 :(得分:1)
HTML文档中的id
属性must be unique。具有相同ID的多个元素将使您感到悲伤,在某些浏览器中比在其他浏览器中更多。
要回答您的问题,您可以使用find()
或选择器上下文:
// Selector context, supplying the current element as the second argument:
$("#buttonid", this).attr({ disabled:true, value:"Sending..." });
// find()
$(this).find("#buttonid").attr({ disabled:true, value:"Sending..." });