在此jsFiddle
中我试图将一个参数传递给一个函数,但它没有收到参数,或者它没有被执行。
<a href="javascript:addRemove('7249');">Details</a>
JQuery的
$(document).ready(function() {
function addRemove(u) {
alert(u);
}
});
任何想法有什么问题以及如何解决?
答案 0 :(得分:6)
您的函数仅存在于ready事件处理程序的范围内,您需要在ready函数之外移动函数addRemove。
答案 1 :(得分:4)
您的代码被jsfiddle (左侧的下拉菜单)包含在onload事件中。因此,如果您添加一个函数,它将不是全局函数,但您的onclick事件将使用名称addRemove
调用全局函数。
答案 2 :(得分:3)
您需要在$(document).ready()
之外定义您的功能。
答案 3 :(得分:2)
addRemove
函数必须在$(document).ready(function(){...});
答案 4 :(得分:2)
我还没有测试过,但我的猜测是这样的:函数内部的东西无法从函数外部访问。例如,
$(document).ready(function() {
function addRemove(u) {
alert(u);
}
});
console.log(addRemove); // reference error or something similar
您应该在addRemove
之外定义$(document).ready
函数 。
答案 5 :(得分:1)
答案 6 :(得分:1)
如果Davin没有回来,这就是答案:jsFiddle默认将JS包装在'onLoad'方法中 - 我们不能允许这样做。
答案 7 :(得分:0)
没有特别要求该功能。在文档就绪部分中,您已设置了功能,但锚点本身不会调用该功能。在这种情况下,只有在有人点击该链接时才会调用它。
你可以为链接提供一个类和数据属性,并使用jQuery来在页面加载时发生一些事情。