如果只有单引号作为ajax帖子中的参数传递,则抛出错误

时间:2014-02-19 06:55:35

标签: javascript jquery ajax

JQuery代码:

var name = jQuery("#name1").val();
jQuery.ajax({
    url: siteUrl + 'search/ind',
    type: 'POST',
    data: { name: name, },
    success: function(data) {
        jQuery('#input').val('');
    }
});

如果只有一个“'”(搜索字段的单引号),结果是响应,但由于JS错误,它阻止附加到html容器。

错误:

SyntaxError: missing ; before statement
...imit":14,"keyword":{"name":"'"

任何帮助都表示赞赏

解决方案:

这个问题背后的主要原因是由于json解析....在通过代码调试后我能够找到问题并删除不需要的解析params正在得到正确。无论如何感谢所有帮助找到这个的人问题...干杯!

2 个答案:

答案 0 :(得分:0)

请从data: { name: name, },删除额外逗号,然后重试

var name = jQuery("#name1").val();
jQuery.ajax({
    url: siteUrl + 'search/ind',
    type: 'POST',
    data: { name: name },      /*Extra Comma removed*/
    success: function(data) {
        jQuery('#input').val('');
    }
});

答案 1 :(得分:0)

我喜欢用短手将对象的键放在引号“”中,它只是简单易读。

var name = $( '#name1' ).val();

$.post( siteUrl + 'search/ind', { "name" : name }, function( response ) {

          $( '#input' ).val('');
    }
});