我有一个表单元素:
<form name="editTourneyForm" data-tourney-id="28">
和一个jQuery选择器:
$('#editTourneyForm').attr('data-tourney-id')
当我尝试通过.attr()
访问属性(数据或名称)时,它返回未定义的。当我检查jQuery对象时,尽管attr和data属性都具有length=2
,但我在任何地方都找不到任何一个属性(当然,我对jQuery对象的结构不满意)。我不知道可能会出什么问题。该表单不是在运行时生成的,因此不应成为未选择动态内容的问题。
我以前已经使用过它,并且对项目的其他部分进行了一些更改,但是现在以某种方式被破坏了,有什么想法吗?
答案 0 :(得分:1)
请注意,您没有该元素的任何ID。它仅具有您要选择的name
属性。
使用下面的选择器进行操作:
$('form[name=editTourneyForm]')
此外,尽管可以使用.attr()
来访问您尝试访问的属性,但是建议使用.data()
来访问数据属性。这样做:
$('form[name=editTourneyForm]').data('tourney-id');
答案 1 :(得分:0)
这是一个JQuery data()方法。请改用$('form[name="editTourneyForm"]').data('tourney-id')
。请检查他们的doc。
请确保使用正确的选择器。