在Jquery Ajax调用中发送带有双引号或单引号的参数
Sending parameters in Jquery Ajax call with quotes, double or single
如果用户在文本区域中添加引号,则无法通过ajax调用发送数据。有没有一种方法发送文本与引号?我不想去掉引号。我想这通常不是什么大问题,我在网上很少发现这种情况。
var description = $('#Description').val();
var title = $('#Title').val();
var parameters = '{content:' + $('#ContentCheck').is(':checked') +
',title: "' + title + '",desciption:"' + description + '"}';
Checkout JSON.stringify(object)
.
关键是,您创建一个javascript对象,并调用stringify来创建一个JSON字符串。根据上面给出的信息,你可以这样做:
var jsonText = JSON.stringify({
'content': $('$('#ContentCheck').is(':checked'),
'title': title,
'description': description
});
这里我们使用花括号定义了一个javascript散列,然后将它传递给stringify。
我也有同样的问题。我试了一下,完全工作了
xmlhttp.open("POST","test_test.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("name="+encodeURIComponent(name)+"&details="+encodeURIComponent(details)+"&r_price="+r_price+"&o_price="+o_price+"&id="+id);
当插入。
可以将参数转换为映射(基本上是一个关联数组),而不是字符串。这样,你就可以在后端。net中进行字符串操作,而无需对前端js进行任何更改;例如
var url = 'http://path/to/your/backend/script';
var parameters = {
contentCheck: $('#ContentCheck').is(':checked'),
title: title,
description: description
};
$.post(url, parameters);
您可以使用js编码引号并在服务器端解码以获得原始字符串
//js
function totalEncode(s){
str= s.replace(/'&/g,'&');
str= str.replace(/</g,'<');
str= str.replace(/>/g,'>');
str= str.replace(/'"/g,'"');
str= str.replace(/''/g,''');
return(str);
}
相关文章:
- Javascript/jQuery:用HTML span标记替换单引号中的文本
- 删除单引号字符转义
- 将字符串中的单引号替换为双引号
- JavaScript:单引号'导致错误
- 如何通过HTML将带有单引号的JSON从PHP传递到Javascript
- 如何在java脚本中用单引号写逗号分隔的值
- 使用jquery或regex,带点但不带点的拆分字符串位于单引号中
- 用空格替换单引号和其他符号
- javascript单引号/双引号
- 如何在字符串输入的 Html 元素中的双引号内编写单引号
- 使用javascript为#、单引号和双引号编码值
- JavaScript 相等操作对单引号字符串和数字都成功
- 对字符串使用单引号或双引号
- 如何在javasciipt中添加单引号到字符串,该字符串将在nodeJS中作为mysql插入命令执行
- 将变量作为参数传递给 onclick 函数,在 .append JQuery 中使用双引号和单引号
- 使用包含单引号的字符串作为内联 HTML 中的 Javascript 参数
- JavaScript函数参数中的单引号转义
- 在Razor's Html.Raw中转义单引号javascript参数
- 在单引号字符串中转义onClick参数周围的双引号
- 在Jquery Ajax调用中发送带有双引号或单引号的参数