sTg*_*sTg 0 javascript anchor jquery
我有一个功能,我有anchor动态生成的标签.现在我有一个下一个按钮,onclick将生成另一个锚标记例如:8如果最后一个数字是7.
对于Eg:
<a id="a1" href="#">4</a>
<a id="a2" href="#">5</a>
<a id="a3" href="#">6</a>
Run Code Online (Sandbox Code Playgroud)
我知道通过使用下面的代码我可以得到锚值
$('#a1').click(function () {
alert($(this).text());
});
Run Code Online (Sandbox Code Playgroud)
点击next按钮我追加另一个:
<a id="a3" href="#">7</a>
Run Code Online (Sandbox Code Playgroud)
但是我生成了100多个锚标签(考虑一个分页器,我一直点击下一个按钮).我不能硬编码100个锚标签的功能.是否有任何方法或通用方法可用于获取锚标记的值?
使用Attribute Starts With Selector [name^=”value”]选择器,
我建议有class基于的共同和选择元素class-selector
$('[id^="a"]').click(function() {
alert($(this).text());
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<a id="a1" href="#">4</a>
<a id="a2" href="#">5</a>
<a id="a3" href="#">6</a>Run Code Online (Sandbox Code Playgroud)
使用class-selector:
$('.a-elem').click(function() {
alert($(this).text());
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<a id="a1" class="a-elem" href="#">4</a>
<a id="a2" class="a-elem" href="#">5</a>
<a id="a3" class="a-elem" href="#">6</a>Run Code Online (Sandbox Code Playgroud)
注意:您可能需要考虑Event delegation是否要追加元素dynamically
目前您正在使用的是一种"直接"绑定,它只会在您的代码进行事件绑定调用时附加到页面上存在的元素.
在动态生成元素时,您需要使用.on()委托事件方法来使用事件委派.
您应该使用类选择器(".class")分配一个公共类
HTML
<a class="anchorLink" href="#">6</a>
Run Code Online (Sandbox Code Playgroud)
脚本
$(document).on('click', "a.anchorLink", function(){
alert($(this).text())
});
Run Code Online (Sandbox Code Playgroud)
代替document你应该使用最接近的静态容器以获得更好的性能.
| 归档时间: |
|
| 查看次数: |
3546 次 |
| 最近记录: |