【发布时间】:2013-01-19 17:45:50
【问题描述】:
我正在尝试通过 Ajax 提交表单,但我无法提交。我有多个表格,我正在使用 (this) 提交数据。我收到了错误From error:0 error。警报消息显示我拥有价值。
<script type="text/javascript">
$(document).ready(function() {
$(".submitform").click(function (){
alert ($(this).parent().serialize());
$.ajax({
type: "POST",
url: "reply_business.php",
timeout:5000,
data: $(this).parent().serialize(),
beforeSend: function(xhr){
$('#load').show();
},
success: function(response){
$(this).parent().find('.sentreply').append(response);
$('.sentreply div:last').fadeOut(10).fadeIn(2000);
//uncomment for debugging purposes
//alert(response);
},
error: function(jqXHR) {
alert ('From error:' + jqXHR.status + ' ' +jqXHR.statusText);
},
complete: function(jqXHR, textStatus){
//uncomment for debugging purposes
//alert ('From complete:' + jqXHR.status + ' ' +jqXHR.statusText + ' ' + textStatus);
$('#load').hide();
}
});
});
});
</script>
我正在通过 PHP 代码创建下面的表单
foreach ($array['business_ids'] as $business)
{
?>
<form >
<input type="hidden" name="b_id" value="<?php echo $business ; ?>" />
<input type="hidden" name="c_id" value="<?php echo $sqlr['conversation_id']; ?>" />
<input type="hidden" name="q_id" value="<?php echo $sqlr['query_id']; ?>" />
<input type="hidden" name="u_id" value="<?php echo $sqlr['u_id']; ?>" />
<textarea name="reply">Type the reply here.</textarea>
<input type="submit" class="submitform" value="Submit">
</form>
<?php
}
我不明白为什么 Ajax 无法发送数据。
【问题讨论】:
-
请求在您的网络调试器中看起来如何?服务器有响应吗?
-
类似的问题,这甚至可以解决你的问题:stackoverflow.com/questions/5661813/…
-
@Bergi - 请求页面的状态为 CANCELED?知道为什么会这样。在那个 php 中,我刚刚看到标题写着
<?php header('Access-Control-Allow-Origin: *');这是原因吗 -
您是否正在尝试执行 CORS 请求?
-
@doniyor : 嗯.. 但在我的情况下,我在同一个服务器上,也在同一个目录中......可能有什么问题?
标签: javascript ajax forms jquery