我有onclick和href函数的锚点链接。如下面的代码
$("div.actions").append('<a id="excelExport" onClick="callajax();" class="actionButton" alt="Export to Excel" title="Export to Excel" href="partexport" ></a>')
function callajax() {
jQuery.ajax({
url : '<s:url action="partexport"/>',
data : "fters.productNbr" : $("#productsTextArea1").val()} });
}
单击锚链接时,Callajax根本没有打电话。
答案 0 :(得分:2)
click
处理程序将首先触发。根据处理点击的方式,您可以控制href链接操作是否通过。
您可以同时执行这两项操作 - 即让您的点击处理程序和链接操作完成。您只需要return false
或从点击处理程序中调用event.preventDefault()
。
答案 1 :(得分:1)
这里有一些可以玩的东西。
http://jsfiddle.net/g30rg3/u5k95/3/
$(document).ready(function(){
$("div.actions").append('<a id="excelExport" class="actionButton" alt="Export to Excel" title="Export to Excel" href="http://www.stackoverflow.com">click me</a>');
$('div.actions').on('click.mylink', '#excelExport',function(e){
e.preventDefault();
callajax();
});
});
function callajax() {
alert('clicked');
}
答案 2 :(得分:0)
首先执行click事件,然后根据结果执行href。例如,从click事件返回false
将阻止href被执行。