我试图获得点击<a>
的价值,因为我的<a>
是由ajax动态插入的,所以我被迫使用.on()
并尝试使用.on()
作为建议来完成我的工作但是却很难使用简单的示例并且无法传递我点击的<a>
的参数。
所需的输出
click art -> alert with hello 5
click entertainment -> alert with hello 5
当前代码
function myHandler(event) {
alert(event.data.foo+event.data.value);
}
$(document).on("click","a.suggest",{foo: "hello "}, myHandler);
//我试过把$ this但是没有用,并返回整页的内容而不是点击的
这是我动态生成的html代码
<ul class="stags_btn" >
<li><a class="suggest"value="5">art</a></li>
<li><a class="suggest"value="3">entertainment</a></li>
<li><a class="suggest"value="23">supplier</a></li>
<li><a class="suggest"value="81">flyer</a></li>
<li><a class="suggest"value="32">company</a></li>
<li><a class="suggest"value="2">digital</a></li>
</ul>
这是我的findle我正在使用最新的jquery(1.10.1) http://jsfiddle.net/SvJQu/1/
答案 0 :(得分:2)
你几乎就在那里,你可以在$(this)
myHandler()
function myHandler(event) {
alert(event.data.foo+$(this).attr('value'));
}
$(document).on("click","a.suggest",{foo: "hello"}, myHandler);
但只是一个旁注:value
作为标准属性不支持您尝试使用的<a>
,它将被视为自定义属性,自定义属性通常为前缀与data-
。
请看这个小提琴:Fiddle!
答案 1 :(得分:1)
FOA value
属性,您可以使用<a>
而不是价值。
您可以使用alt
和
attr('alt')
将返回this.text
<a>...</a>
<ul class="stags_btn" >
<li><a class="suggest" alt="5" >art</a></li>
<li><a class="suggest" alt="3">entertainment</a></li>
<li><a class="suggest" alt="23">supplier</a></li>
<li><a class="suggest" alt="81">flyer</a></li>
<li><a class="suggest" alt="32">company</a></li>
<li><a class="suggest" alt="2">digital</a></li>
</ul>