我使用这个Ajax邮政编码将帖子提交到blogsky博客托管中的博客。
var result = null;
var scriptUrl = "http://www.blogsky.com/cp/weblog/post.bs";
$.ajax({
url: scriptUrl,
type: 'post',
data: ({txtTitle : 'BEHZAD', txtText : 'BEHZAD' , hidAction : 'Publish'}),
dataType: 'jsonp',
jsonp: 'jsonp_callback',
async: false,
success: function(data) {
alert("success");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
document.write(textStatus+" - "+errorThrown);
}
});
和博客页面中包含此表单。和博客托管不适合我的,我不能改变发送邮政编码。
<form action="http://www.blogsky.com/cp/weblog/post.bs" method="post">
<table id="frmposttb">
<tr>
<td colspan="2"><input type="text" name="txtTitle" value="" style="width:320px;" maxlength="64" onkeypress="FKeyPress(event)" onkeydown="FKeyDown(event)" /></td>
</tr>
<tr>
<td colspan="2" class="editor">
<textarea id="txtText" name="txtText" rows="1" cols="1" style="width: 545px; height: 290px"></textarea>
</td>
</tr>
<tr>
<input type="hidden" name="hidAction" value="Publish" />
<td class="tdl"><input type="submit" value="SEND"></td>
</tr>
</table>
但是当加载页面获得此erorr时
parsererror - 错误:未调用jQuery18203252281643505811_1367758980965
和页面滚动并重新加载。我使用其他dataType但仍然是错误
dataType: 'jsonp'
dataType: 'sonp'
dataType: 'html'
dataType: '....'
答案 0 :(得分:-1)
从$.ajax()
电话中删除以下一行:
jsonp: 'jsonp_callback',
此外,您不能将jsonp
数据类型与同步调用async: false
一起使用,如jquery $.ajax()
docs中所述:
跨域请求和dataType:“jsonp”请求不支持同步操作。
所以请改用async: true,
。