Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery post()从文本区域转义特殊字符_Javascript_Json_Jquery_Post - Fatal编程技术网

Javascript 如何使用jQuery post()从文本区域转义特殊字符

Javascript 如何使用jQuery post()从文本区域转义特殊字符,javascript,json,jquery,post,Javascript,Json,Jquery,Post,我有一个表单,它由两个文本字段和一个用于订单注释/注释的文本区域组成。我遇到的问题是,每次我在textarea中键入一个特殊字符时,ajax请求就会停止工作。我尝试使用escape、escapeURIComponent等来逃避特殊角色,但似乎没有任何效果。删除特殊字符是可行的,但这并不能解决我的问题。有什么建议吗?下面是我的代码片段: $.post(getPost('addComponent'), { componentType:$('#componentType

我有一个表单,它由两个文本字段和一个用于订单注释/注释的文本区域组成。我遇到的问题是,每次我在textarea中键入一个特殊字符时,ajax请求就会停止工作。我尝试使用escape、escapeURIComponent等来逃避特殊角色,但似乎没有任何效果。删除特殊字符是可行的,但这并不能解决我的问题。有什么建议吗?下面是我的代码片段:

$.post(getPost('addComponent'), {
                componentType:$('#componentType').val(),
                productQty:$('#productQty').val(),
                comments:$("#orderNotes").val()
            }, function(data, statusCode) {
        if (statusCode === 'success') {
            updateComponentContainer(data);
        } else {
            return false;
        }
    }, 'json');
看看jQuery.serialize

**编辑**

看看这个JSFIDLE:


不确定特殊字符是什么,但base64编码应该可以解决这个问题

如果您想在购买前试一试,请点击演示页面


我的理解是序列化会序列化整个表单,对吗?您将如何仅为一个元素执行此操作?我的案例中的文本区域。请让我知道。@Jrobertiko-您可以序列化一个元素。看看我在回答中的JSFIDLE。