我有一个如下输入框:
<input type="text" value="" somethingSpecial="filename.txt" id="myID" class="box">
我还有一个如下所示的选择列表:
<select name="type" class="form-select" id="type">
<option value="keyword" selected="selected" otherValue="filename.txt">Keyword</option>
<option value="title" otherValue="filename1.txt">Title</option>
<option value="author" otherValue="filename2.txt">Author</option>
<option value="subject" otherValue="filename3.txt">Subject</option>
</select>
当用户从这个选择列表中选择一个选项时,为了这个例子,让我们说“标题”,然后我需要将“otherValue”拉出这个字段,所以“filename1.txt”和交换输入框中的“somethingSpecial”值。
通常情况下,我只会使用一个函数来访问HTML属性,比如name,id,class等......但显然我使用的是没有传统属性的。
答案 0 :(得分:1)
类似的东西:
$("#myid").attr("otherValue")
答案 1 :(得分:1)
如果您想要执行此类操作,可以使用.attr()
,但首选方法是使用自定义数据属性(其名称以data-
开头)和.data()
方法进行访问/改变它们。它们是HTML5的一部分,但也可以在早期版本的HTML中访问(参见John Resig的文章:HTML 5 data- attributes)。
<input type="text" value="" data-somethingSpecial="filename.txt" id="myID" class="box">
然后像这样访问它:
jQuery('#myID').data('somethingSpecial')
并改变:
jQuery('#myID').data('somethingSpecial', 'something else')
答案 2 :(得分:0)
使用jquery.data()
查看您可以在标记中使用HTML5语法,如:
<option id="title" value="title" data-otherValue="filename1.txt">Title</option>
使用jquery访问:
$('option#title').data('othervalue')
我确信您可以在此示例的基础上进行构建,并选择您的选项作为数组或其他内容。