我有ajax脚本,但它返回意外的令牌*。我使用来自w3school.com的ajax示例,它与通常不同。这是我的剧本:
<script>
$("#conform").click(function ()
{
var a= $(this).closest(".col").prev().find("#prod_qty").val();
var b= $(this).prev().val();
var c= $(this).closest("#highlight_product").find("#name").val();
var d= b * c;
var e= "<?php echo $_SESSION['name'] ?>";
var f= "<?php echo $_SESSION['email'] ?>";
}
)
function buy()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ('Browser does not support HTTP Request');
return;
}
var url='buy.php?user='+e+'&email='+f+'&product='+c+'&count='+a+'&total='+d;
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open('GET',url,true);
xmlHttp.send(null);*/
}
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=='complete')
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject('Msxml2.XMLHTTP');
}
catch (e)
{
xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');
}
}
return xmlHttp;
}
我尝试在谷歌中找到它,它说dataType
有问题,它必须HTML
。但是我不知道怎么改变它,有人知道吗?
答案 0 :(得分:2)
该行
xmlHttp.send(null);*/
有意外的“* /”需要删除
xmlHttp.send(null);
答案 1 :(得分:1)
我可以建议使用Jquery AJAX包装器吗?它具有跨浏览器兼容性,更加简洁,并且在完成时为您提供了一个方便的回调函数(非常重要),因为结果是ASYNC,它允许您在执行之前检索数据。
$.ajax({
type: "POST",
url: '',
data : '',
dataType: 'JSON',
}).done(function(data) {
// this will be run when the AJAX request completes
var ParsedData= jQuery.parseJSON(data);
// this will be run when the AJAX request succeeds
}).fail(function() {
// this will be run when the AJAX request fails
}).always(function() {
// this will be run when the AJAX request is complete, whether it fails or succeeds
});
}