我在点击JQuery.GetJSON
标记时实施了一个简单的<img>
方法。问题是Internet Explorer正在抛出一个异常,即methodname未定义。
任何人都可以指导我。
HTML:
<div class="itemgenerate">
<img src="/images/generate.png" onclick="sendJSONRequest()" style="cursor: pointer;" />
</div>
<div id="divTarget" class="itemtext">
<p id="pStuff"></p>
</div>
Java脚本:
<script language="javascript" type="text/javascript" src="/Scripts/jquery-1.4.1.js" />
<script language="javascript" type="text/javascript">
function sendJSONRequest() {
$.getJSON("/Home/Generate", $('#text1').val(), function (data) {
$('#pStuff').text(data.Stuff);
});
}
</script>
如果有人能解释我这里有什么问题,请不要这样做:
答案 0 :(得分:4)
script
标签不能自动关闭。您需要关闭script
代码:
<script language="javascript" type="text/javascript" src="/Scripts/jquery-1.4.1.js"></script>
您当前的语法意味着第一个脚本标记将不会被关闭,其内容将被视为第一个脚本标记的一部分。由于第一个标记具有src
属性,因此将忽略其内容,因此不会定义您的函数。
答案 1 :(得分:1)
在标记中使用onclick=
不是JQuery方式;使用JQuery的一个要点是允许您从HTML标记中抽象出脚本代码。所以你会改用这样的东西:
$(document).ready() {
$('#myimage').click(sendJSONRequest);
}