Jquery 从输入检索自定义属性无效
我在带有自定义属性的Jquery 从输入检索自定义属性无效,jquery,attributes,Jquery,Attributes,我在带有自定义属性的中有一个标记。 当我试图创建一个函数来检索该属性时,它不起作用。 有什么想法吗 <table> <tr> <td> <input row="ab01" id="ab01_01"> </td> </tr> </table> function retrieve_row(){ alert($(this).attr('row')); } 函数检索_行(){ 警
中有一个
标记。
当我试图创建一个函数来检索该属性时,它不起作用。
有什么想法吗
<table>
<tr>
<td>
<input row="ab01" id="ab01_01">
</td>
</tr>
</table>
function retrieve_row(){
alert($(this).attr('row'));
}
函数检索_行(){
警报($(this.attr('row'));
}
结果是未定义
。为什么?有几件事:
您的此
范围不正确,只需直接针对您的元素:
function retrieve_row(){
alert($('#ab01_01').attr('row'));
}
另外,不要像现在这样自定义HTML属性。不过,不要担心,您可以使用HTML5data-
属性来实现相同的目的:
<input row="ab01" id="ab01_01"> //INVALID
<input data-row="ab01" id="ab01_01"> //VALID
function retrieve_row(){
alert($('#ab01_01').attr('data-row')); //The un-hip way
alert($('#ab01_01').data('row')); //Like the cool kids are doing
}
您可能希望向表中添加一个类或ID,以便此函数不会过于宽泛。以下几点:
您的此
范围不正确,只需直接针对您的元素:
function retrieve_row(){
alert($('#ab01_01').attr('row'));
}
另外,不要像现在这样自定义HTML属性。不过,不要担心,您可以使用HTML5data-
属性来实现相同的目的:
<input row="ab01" id="ab01_01"> //INVALID
<input data-row="ab01" id="ab01_01"> //VALID
function retrieve_row(){
alert($('#ab01_01').attr('data-row')); //The un-hip way
alert($('#ab01_01').data('row')); //Like the cool kids are doing
}
您可能希望向表中添加一个类或ID,以便此函数不会过于宽泛。以下几点:
您的此
范围不正确,只需直接针对您的元素:
function retrieve_row(){
alert($('#ab01_01').attr('row'));
}
另外,不要像现在这样自定义HTML属性。不过,不要担心,您可以使用HTML5data-
属性来实现相同的目的:
<input row="ab01" id="ab01_01"> //INVALID
<input data-row="ab01" id="ab01_01"> //VALID
function retrieve_row(){
alert($('#ab01_01').attr('data-row')); //The un-hip way
alert($('#ab01_01').data('row')); //Like the cool kids are doing
}
您可能希望向表中添加一个类或ID,以便此函数不会过于宽泛。以下几点:
您的此
范围不正确,只需直接针对您的元素:
function retrieve_row(){
alert($('#ab01_01').attr('row'));
}
另外,不要像现在这样自定义HTML属性。不过,不要担心,您可以使用HTML5data-
属性来实现相同的目的:
<input row="ab01" id="ab01_01"> //INVALID
<input data-row="ab01" id="ab01_01"> //VALID
function retrieve_row(){
alert($('#ab01_01').attr('data-row')); //The un-hip way
alert($('#ab01_01').data('row')); //Like the cool kids are doing
}
您可能希望向表中添加一个类或ID,以便此函数不会过于宽泛。因为什么是
$(this)
?试试$(“#ab01_01”).attr('row')因为什么是$(this)
?试试$(“#ab01_01”).attr('row')因为什么是$(this)
?试试$(“#ab01_01”).attr('row')因为什么是$(this)
?试试$(“#ab01_01”).attr('row')代码>我想你指的是属性,而不是元素?+1虽然使用数据属性,但应该使用而不是.attr(),这两方面都是正确的。很抱歉,清晨采血:)它正在工作,但是:1-如果我有多个输入标记,具有不同的id和不同的数据行属性,2-我创建了一个函数onclick来检索我单击的输入的数据行?您是否正在寻找一个单击处理程序来应用于每个输入,哪个会提醒您它的数据行
值?我想您指的是属性,而不是元素?+1虽然使用数据属性,但您应该使用而不是.attr()。您在这两方面都是正确的。很抱歉,清晨采血:)它正在工作,但是:1-如果我有多个输入标记,具有不同的id和不同的数据行属性,2-我创建了一个函数onclick来检索我单击的输入的数据行?您是否正在寻找一个单击处理程序来应用于每个输入,哪个会提醒您它的数据行
值?我想您指的是属性,而不是元素?+1虽然使用数据属性,但您应该使用而不是.attr()。您在这两方面都是正确的。很抱歉,清晨采血:)它正在工作,但是:1-如果我有多个输入标记,具有不同的id和不同的数据行属性,2-我创建了一个函数onclick来检索我单击的输入的数据行?您是否正在寻找一个单击处理程序来应用于每个输入,哪个会提醒您它的数据行
值?我想您指的是属性,而不是元素?+1虽然使用数据属性,但您应该使用而不是.attr()。您在这两方面都是正确的。很抱歉,清晨采血:)它正在工作,但是:1-如果我有多个输入标记,具有不同的id和不同的数据行属性,2-我创建了一个函数onclick来检索我单击的输入的数据行?您是否正在寻找一个单击处理程序来应用于每个输入,哪个将提醒您其数据行
值?