Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript load()由按钮不工作触发_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript load()由按钮不工作触发

Javascript load()由按钮不工作触发,javascript,jquery,ajax,Javascript,Jquery,Ajax,我第一次尝试使用AJAX和JQuery加载内容。我有一个“容器网页”,我必须显示一些数据分为4个其他网页,所以我只想加载我整个“容器网页”的一个div。每页都包含一个按钮,用于加载下一页。例如,我有一个简单的HTML: <button id="btn">Load</button> <div id="result" onclick="loadContent()"></div> 但当我点击时,什么也没发生。。。 你能帮助我吗?我知道这应该很容易,但我

我第一次尝试使用AJAX和JQuery加载内容。我有一个“容器网页”,我必须显示一些数据分为4个其他网页,所以我只想加载我整个“容器网页”的一个div。每页都包含一个按钮,用于加载下一页。例如,我有一个简单的HTML:

<button id="btn">Load</button>
<div id="result" onclick="loadContent()"></div>
但当我点击时,什么也没发生。。。 你能帮助我吗?我知道这应该很容易,但我非常习惯Js,而不是JQuery,这让我发疯。。。提前谢谢


FIDDLE:

我将按如下方式分配单击处理程序

$('#result').click(function() {
   $(this).load('...');
});
(如果要处理按钮上的单击事件,请将“#结果”更改为“#btn!”)

我真的不知道“加载”函数,所以我假设它都很好。
您可能希望调试脚本。并使用jQuery的开发者版本,这样您就有机会了解正在发生的事情。

您应该绑定onclick,而不是div上的按钮:

<button id="btn" onclick="loadContent()">Load</button>
<div id="result"></div>
加载

“加载”仅用于从同一域加载html…

您有几个问题:

  • 当您打算将单击处理程序绑定到按钮时,您将其绑定到了div
  • loadContent()
    函数在全局上下文中不可用。因为您包含了jQuery,所以所有javascript都是在本地上下文中创建的。看看JSFIDLE生成的源代码,您就会明白我的意思
  • 您正在尝试执行跨域Ajax加载,这通常是不允许的
你应该在你的javascript中试试这个

$('#btn').click( function() {
    $('#result').load('/gal007/m44cqzrb/show/');
});
并更改您的HTML以摆脱内联JS

<button id="btn">Load</button>
<div id="result"> </div>
加载

那就行了。

点击事件在
上,而不是
上。这就是你想要的吗?它无法正常工作,因为你使用了“onLoad”选项而不是“No wrap”选项之一,所以函数不在全局范围内。即使你修复了它,它也会因为相同的源策略而出错。你在Javascript控制台中检查了错误吗?这个错误是我在第二条评论中所说的吗?你应该加上一个答案:)(假设你真的希望点击来自,正如加里指出的)结果是巴尔马破解了它。wd:D同样的原产地政策问题;)
<button id="btn">Load</button>
<div id="result"> </div>