我有一个简单的脚本,它获取文本区域的值并通过AJAX发布。如果我发布"??我得到奇怪的价值观。如果我在发布之前注销它检索的值,则一切都是正确的。但是我的脚本收到的 POST 数据包括 jQuery 版本号。我的代码和结果如下。我应该以某种方式逃避这个吗?
var value = $("#textarea").val();
$.ajax({
url:'index.php',
type:'POST',
data:'text='+value,
dataType:'JSON',
success:function(data){}
});
我的帖子数据作为文本价值的"jQuery17106460378167700797_1345234676316"。
这是一个 POST 请求,而不是 GET,应该是:
var value = $("#textarea").val();
$.ajax({
url:'index.php',
type:'POST',
data: {text : value}, //object
dataType:'JSON',
success:function(data){
}
});
.PHP
$value = $_POST['text'];
此外,将 dataType 设置为 JSON 会将响应评估为 JSON 并返回 JavaScript 对象。以严格的方式解析 JSON 数据,任何格式错误的 JSON 都将被拒绝,并引发解析错误。这意味着任何格式错误的 JSON,并且您的 ajax 调用都将失败。
我不确定您何时执行脚本,是否按下按钮?
如果没有,则需要包装它,以便它仅在 DOM 完成加载后运行:
$(document).ready(function()
{
var value = $("#textarea").val();
$.ajax({
url:'index.php',
type:'POST',
data:'text='+value,
dataType:'JSON',
success:function(data){}
});
});