【发布时间】:2013-01-05 01:48:18
【问题描述】:
使用下面的代码,点击按钮不会调用 handleData() 函数, 如果我使用匿名函数方式(在 /* */ 中),它就可以工作。
有人能解释一下问题是什么吗?以及如何解决? 我想从 $(document).ready(...) 调用全局函数。
<html>
<head>
<script src="js/jquery/jquery-1.7.2.min.js"></script>
<script>
function handleData(data, status) {
$("#p1").text(data);
};
$(document).ready(function() {
$("button").click(function() {
$.get("testAsync?name=value", handleData(data, status));
});
/*
$("button").click(function() {
$.get("testAsync?name=value", function(data, status) {
$("#p1").text(data);
});
});
*/
});
</script>
</head>
<body>
<button>Send an HTTP GET</button>
<p id="p1"></p>
</body>
</html>
【问题讨论】:
-
那是因为它需要一个函数而不是函数调用。如果 handleData 返回一个函数,它也可以工作
标签: javascript jquery document