[英]Ajax call in jquery not working
我对ajax有一点问题,并将POST数据从jquery传递到PHP,然后将返回的值从php写回div标签
这是代码:
JS
function jsAjax()
{
$.ajax(
{
type:"POST",
url:"http://localhost/anonsecrets/functions/jswrapper.php",
data:{name:"Ilija", phone:"0343014"},
success:function(data)
{
$("#msg").html(data);
},
error:function()
{
alert("Neuspenos");
}
});
};
的PHP
<?php
echo $_POST['name'];
?>
和HTML
<div id="msg"></div>
<a href="" target="" onclick="jsAjax()"><div id="headerbutton">Best</div></a>
您还可以对HTML执行以下操作
<a href="" target="" onclick="jsAjax(); return false;"><div id="headerbutton">Best</div></a>
这样可以确保浏览器不会忽略该点击,同时,您还应确保页面的URL也位于localhost域中,以避免由于CORS引起的问题( http://en.wikipedia.org/wiki/Cross -origin_resource_sharing )问题
您可以通过添加id
到链接来使用jQuery
点击处理程序
例:
的HTML
<div id="msg"></div>
<a href="" id="msg-link" target=""><div id="headerbutton">Best</div></a>
JS
$('#msg-link').click(function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "test.php",
data: {name: "Ilija", phone: "0343014"},
success: function(data)
{
$("#msg").html(data);
},
error: function()
{
alert("Neuspenos");
}
});
});
将您的HTML修改为
<a href="#"
从
<a href=""
这样,在单击发出AJAX请求a
标签后,您的页面将不会重新加载
乔纳森
您没有描述单击链接时会发生什么。 如果在没有进行ajax调用的情况下重新加载页面,则Ankit的解决方案将起作用。 而且,如果您很难找到确切原因,请在安装Firebug扩展程序后在Firefox上进行测试。 在Firebug控制台中,您将看到Javascript错误(如果有)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.