折腾了一天,终于搞明白 :
1,jquery的.get .post 方式是不支持跨域访问的!
2,.getJSON支持跨域访问!通过浏览器的网络监视,发现远端php成功获取了参数,并且浏览器成功接收到了php返回的参数,参数是标准的JSON格式,但是就是进不去回调函数!有人知道为什么的话请麻烦回复我!
3,跨域是指不同的域名访问(差不多我的理解就是这个意思),一个域名不同端口也是跨域访问。在用Idea这款软件的时候,执行html默认是在localhost:63443这个端口,而本机运行的apache服务器是在8082端口,所以造成了跨域访问的问题。
解决方案:
将idea的默认执行端口设置为8082,修改端口方法:http://blog.csdn.net/umbrellabeach_99/article/details/47337733
下面附上我的代码:
html:
<div class="input-group">
<span class="input-group-addon" id="register-name" style="width: 100px;">用户名</span>
<input type="text" class="form-control" maxlength="12" placeholder="请输入用户名"
aria-describedby="basic-addon1" style="width: 100%" name="rg-name" id="iname">
</div>
<p>Suggestions: <span id="txtHint"></span></p>
js:
$(document).ready(function() {
$("#register-confirm").button();
$("#iname").on("keyup", function () {
// $("#txtHint").text($("#iname").val()); //调试通过
$.get("../myphp/chkname.php",{name:$("#iname").val()},function(data){
$("#txtHint").text(data);
});
})
})
php:
<?php
header("charset=utf-8");
echo"hello:".$_GET['name'];