我不想运行jquery但是当我运行它时,我首先得到我的值然后代码失败错误。这是什么意思?在这里你可以找到我的json en ajax文件。似乎json不会去我的ajax文件。
$("#submit_tosolve").on("click",function(e){
//data uitlezen
alert("ok");
var message =$("#bugcommentaar").val();
console.log(message);
alert("ok");
//data naar database sturen
var request = $.ajax({
url: "ajax/facebook_ajax.php",
type: "POST",
data: {message : message}, //JSON
dataType: "json"
});
request.done(function(msg) {
if(msg.status=="success"){
var update='<div style="display:none;" class="span4">'+
' <table><tr><td><h5><p>'+ message+'comment posted </p></h5></td></tr></table></div>';
$("#singleBug table").prepend(update);
$("#singleBug table tr td").first().slideDown(); //dit gaat werken op elke browser, de eerste eruit halen
}
});
request.fail(function(jqXHR, textStatus) {
console.log("request failed" +textStatus);
});
});
我的ajax文件:
<?php
include_once("../classes/Bug.class.php");
$feedback=array();
if(isset($_POST['message']))
{
try
{
$Bug = new Bug();
$Bug->Commentaar=$_POST['message'];
$Bug->Bug_id=$_SESSION['id2sessioncommentaar'];
$Bug->UpdateCommentaar();
$feedback['text'] = "Your comment has been posted!";
$feedback['status'] = "success";
}
catch(Exception $e)
{
$feedback['text'] = $e->getMessage();
$feedback['status'] = "error";
}
header('Content-Type: application/json' );
echo json_encode($feedback);
}
?>
答案 0 :(得分:1)
好的2件事:
在玩网页时总是提及你的导航器:)
$.ajax({
url: "ajax/facebook_ajax.php",
type: "POST",
data: {message : message}, //JSON
dataType: "jsonp", //Solution 2: try this type instead, it also automatically sets cache to false
cache: false, // Solution 1 : prevent IE caching response (basically adds a random argument to the request)
success:function(data, textStatus, jqXHR) {
var update='<div style="display:none;" class="span4">'+
' <table><tr><td><h5><p>'+ data+'comment posted </p></h5></td></tr></table></div>';
$("#singleBug table").prepend(update);
$("#singleBug table tr td").first().slideDown(); //dit gaat werken op elke browser, de eerste eruit halen
},
error:function(jqXHR, textStatus, errorThrown) {
console.log("request failed" +textStatus);
}
});
此外,jQuery默认使用UTF8,您的服务器文件需要以UTF8和您的请求编写。
header('Content-Type: application/json; charset=UTF-8' );
编辑:顺便说一句,在用“jquery ajax json 304”进行短搜索后,我发现这篇帖子jQuery AJAX producing 304 responses when it shouldn't有完全相同的问题和完全相同的解决方案(缓存:假)