由于某种原因,ajax没有发送数据。
在PHP上我有这段代码:
if (isset($_POST['submit'])) {
echo "submit";
} else {
echo "not submit";
}
我没有提交。 这是JS代码:
$(function () {
$('#submit').click(function () {
var length = $('#number').val();
var small = $('#small').val();
var big = $('#big').val();
var number = $('#numero').val();
var special = $('#special').val();
var submit = 'submit';
var url = 'public/php/codegenerator.php';
var data = "length=" + length + "&small=" + small + "&big=" + big +
"&number=" + number + "&special=" + special + "&submit=" + submit;
$.ajax({
type: "POST",
url: url,
data: data,
success: function () {
$('#code').load(url, function () {
$(this).fadeIn(1000)
});
}
});
return false;
});
});
答案 0 :(得分:2)
您可以尝试这种方法
$(function(){
$('#submit').click(function(){
//YOUR CODE
var param = {
length:length,
small:small,
big:big,
number:number,
special:special,
submit:submit
}
$.ajax({
type: "POST",
url: url,
data: param,
//EDITED LINE
success: function (data) {
$('#code').hide().html(data).fadeIn(1000);
}
});
return false;
});
});
//已经修改过的答案
//在你的PHP文件中
if (isset ($_POST['submit'])) {
echo json_encode(array('result'=>"submit"));
}
else {
echo json_encode(array('result'=>"not submit"));
}
//在您的JQUERY CODE中
$.ajax({
type: "post",
url: url,
data: param,
dataType:'json';
//EDITED LINE
success: function (data) {
// alert(data.result);
$('#code').hide().html(data.result).fadeIn(1000);
}
});
答案 1 :(得分:0)
您收到Not submit,因为它来自.load()调用,而不是来自.ajax - 并且在加载调用中您只需加载URL而不传递任何POST数据。那么为什么你在.ajax的成功回调中使用相同的url运行.load?