出于某种原因,这行代码返回 undefined for$(this).attr("href")
$("a").attr("href", "javascript:page('" + $(this).attr("href") + "')");
我怎样才能得到那个值?
出于某种原因,这行代码返回 undefined for$(this).attr("href")
$("a").attr("href", "javascript:page('" + $(this).attr("href") + "')");
我怎样才能得到那个值?
$("a").click(function(e){
e.preventDefault();
page(this.href);
});
尝试:
$("a").attr("href", function (index, oldHref) {
return "javascript:page('" + oldHref + "')");
});
查看文档以attr
获取有关采用函数引用的重载的信息。
尽管正如@Pointy 指出的那样,您应该考虑编写事件处理程序而不是javascript:
在标记中使用。
这是一种不需要在您的 href 属性上使用 Javascript 的替代方法
$('a').click( function(e) {
e.preventDefault();
page(this.href);
} )
您不需要内联 javascript,为什么不这样做:
$("a").click(function(){
page(this.href);
return false;
});
如果你想这样做(更新页面上链接的所有 href 属性),你可以这样做
$("a").each(function() {
$(this).attr("href", "javascript:page('" + $(this).attr("href") + "')");
});