我想要一个函数在单击具有 `value="frb" 的特定锚点时运行。
这是锚
<a href="<?php echo $l1; ?>" value="frb" class="button">Accept</a>
这是我尝试过的:
$('body').on('click', value[frb], function(e) {
e.preventDefault();
});
这不起作用,我找不到任何使用它的例子,这可能吗?
我想要一个函数在单击具有 `value="frb" 的特定锚点时运行。
这是锚
<a href="<?php echo $l1; ?>" value="frb" class="button">Accept</a>
这是我尝试过的:
$('body').on('click', value[frb], function(e) {
e.preventDefault();
});
这不起作用,我找不到任何使用它的例子,这可能吗?
value
不是锚标记的有效属性。取而代之的是,您可以使用data-value
如下:
HTML
<a href="<?php echo $l1; ?>" data-value="frb" class="button">Accept</a>
jQuery
$('body').on('click', 'a[data-value=frb]', function(e) {
e.preventDefault(); // prevent page reload
alert( this.href );
});
@Musa已经提到过data
属性,但是在他使用的 jQuery 代码片段中a[value=frb]
,它不起作用。
的第二个参数.on()
应该是选择器字符串
$('body').on('click', 'a[value=frb]', function(e) {
e.preventDefault();
});
同样a
标签没有 value 属性,您应该使用 data 属性代替
<a href="<?php echo $l1; ?>" data-value="frb" class="button">Accept</a>
尝试这个:
$(function(){
$('a[value=frb]').click(function(e) {
e.preventDefault();
});
});
它将函数分配给具有指定“值”属性的所有锚点。
工作演示 http://jsfiddle.net/KQy36/
哦顺便说一句: http: //www.w3schools.com/tags/tag_a.asp(查看有效的a
标签属性)
Anyhoo,希望这会有所帮助,
代码
$('a[value="frb"]').on('click', function(e) {
alert('yeah wha?');
e.preventDefault();
});
或者在我下面的另一篇文章中。:)
$('a').on('click', function(e) {
if ($(this).attr("value") === "frb") {
alert('yeah wha? I am frb');
e.preventDefault();
} else {
alert('not frb');
e.preventDefault();
}
});
由于链接标签没有 value 属性,我们需要对 html 进行更改:
<span class="frb"><a href="<?php echo $l1; ?>" class="button">Accept</a></span>
然后添加这个来注册点击事件。
$(document).ready(function(){
$('span.frb').click(function(e) {
e.preventDefault();
});
});