2009-10-06 76 views
0

我有一个评论PAGE与TEXTFIELD。 用户需要能够写很长的故事(1000个字+)可能包含像()*&^%$#@\/<>Jquery GET - 发送和接收长而复杂的内容,如何?

字符一旦“保存”按我想用Jquery GET - > PHP来处理文件内容。 (保存在mysql数据库中)

并返回结果。

比方说,我想显示"alert(words_were_saved:int)"

我如何能够通过长期的,复杂的参数和jQuery的_POST,_GET,而不会导致JS/HTTP错误?

回答

3

尝试这些:

使用get:

var text = $('#textfield').val(); 
$.get('someurl.php",{data: text},function(result){ 
    alert(result); 
} 

或使用后(这应该优于获得当数据量很大时提交):

var text = $('#textfield').val(); 
$.post('someurl.php",{data: text},function(result){ 
    alert(result); 
} 

someurl.php:

$data = $_REQUEST['data']; 
//do what you want to the data 
//print some thing 
echo 'saved';//this text will be alerted on get callback 
1

您应该对大数据量使用帖子。 它的工作方式相同:

jQuery.post(url, [data], [callback], [type]) 

负载使用HTTP POST请求远程页面。 这是一种简单的方法,可以将简单的POST请求发送到服务器,而无需使用更复杂的$ .ajax函数。它允许指定一个单一的回调函数,当请求完成时(并且只有当响应具有成功的响应代码时)才会执行该回调函数。

返回的数据格式可以由第四个参数指定。如果您需要同时具有错误和成功回调,则可能需要使用$ .ajax。 $ .post是$ .ajax的(简化)包装函数。 $ .post()返回它创建的XMLHttpRequest。在大多数情况下,您不需要该对象直接操作,但如果需要手动中止请求,则该对象可用。

0

其最佳实践是使用邮件来更改状态(即保存,更新删除)以及仅用于提供内容(文本,html等)的信息。 这种做法似乎让事情变得更好,分离和简洁,并且可以发布大量数据。