我有一张表格可供人们发布书评。他们给出了书的标题,作者的名字和评论文本。当用户单击按钮以保存评论时,将调用javascript函数:
function gravarResenha(id) {
var livro = $("#resenhatit").val();
var autor = $("#resenhaaut").val();
var resen = $("#resenhatex").val();
if ((livro != "") && (autor != "") && (resen != "")) {
$.ajax({
type: "POST",
url: "resenha/gravar/id/" + id + "/livro/" + livro + "/autor/" + autor + "/texto/" + resen,
success: function(res) {
if( res == 1 ) {
carregaPagina( 'secliteratura' , 'col02' );
} else {
alert( "Problemas no cadastramento da resenha. Tente novamente." );
}
},
error: function(res) {
alert( "Problemas no cadastramento da resenha. Tente novamente." );
}
});
} else {
alert( "Impossível postar uma resenha vazia." );
}
}
变量resen接收id为#resenhatex的textarea的值。此值正在被截断。
起初我以为是我在MySQL表中使用TEXT字段的事实。然后我将其更改为LONGBLOB字段,考虑到评论可能有点长。
我还添加了这种类型:" POST"在我的jQuery AJAX调用中,因为我提醒说GET方法在发送数据的大小方面有一些限制。
即使做了所有这些更改,当我发送更大的评论时,我仍会得到相同的截断值。
有什么建议吗?
答案 0 :(得分:0)
每次我在传递的文本中都有问号(?)时,问题就出现了。
我做了以下事情来解决问题:
var myresen = $("#resenhatex").val();
myresen = myresen.replace(/\?/g, "%3F");
然后它工作正常!