绑定单击事件并将href属性传递给函数
问题描述:
我在页面上有以下链接(按钮),而不是它转到链接来调用函数,而是传递单击的各个按钮的url通过该函数的变量。 页面上可能有3个以上的链接(按钮),但它们都需要调用相同的功能,但要通过单击按钮的相应href阀门。 我的假设是我需要做一些绑定,但不知道如何在jQuery中做到这一点。任何帮助,将不胜感激!!!绑定单击事件并将href属性传递给函数
编辑:不幸的是没有ID的任何锚,但我可以说的目标锚的唯一途径是href属性的开头将始终以“/ShoppingCart.asp?ProductCode=”
启动<td width="36%" align="right">
<a href="/ShoppingCart.asp?ProductCode=884280">
<IMG SRC="/v/vspfiles/templates/100/images/buttons/btn_addtocart_small.gif" ALIGN=absmiddle BORDER=0></A>
</td>
<td width="36%" align="right">
<a href="/ShoppingCart.asp?ProductCode=9857%2D116%2D003">
<IMG SRC="/v/vspfiles/templates/100/images/buttons/btn_addtocart_small.gif" ALIGN=absmiddle BORDER=0></A>
</td>
<td width="36%" align="right">
<a href="/ShoppingCart.asp?ProductCode=70367301P">
<IMG SRC="/v/vspfiles/templates/100/images/buttons/btn_addtocart_small.gif" ALIGN=absmiddle BORDER=0></A>
</td>
答
你可以很容易地用jQuery做到这一点。
让我们创建一个示例函数:
function someFunction(href) {
//do something with url
alert(href);
}
然后在jQuery的,你可以很容易地通过href属性的功能:
要获得所有元素开始与前缀只需使用此代码即可。
$("a[href^='/ShoppingCart.asp?ProductCode']").click(function() {
var href = $(this).attr('href');
someFunction(href);
return false;
});
返回false将阻止链接转到该页面。
如果我在页面上有其他href,我不需要像$(“a [href^='/ ShoppingCart.asp?ProductCode =']”)目标,点击(功能() ,不会该功能需要功能someFunction(href){ 而不是函数someFunction(url){ – user357034 2010-07-10 02:11:47
检查出我的编辑 – Marko 2010-07-10 02:17:29
而在自定义函数中,你可以任意指定参数的名称,只要 function blah(foo,bar){ alert(foo + bar); } – Marko 2010-07-10 02:20:45