为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery-非法调用

jQuery-非法调用

冉冉说 2019-12-03 10:56:55
jQuery v1.7.2我有这个功能,在执行时给我以下错误:Uncaught TypeError: Illegal invocation这是功能:$('form[name="twp-tool-distance-form"]').on('submit', function(e) {    e.preventDefault();    var from = $('form[name="twp-tool-distance-form"] input[name="from"]');    var to = $('form[name="twp-tool-distance-form"] input[name="to"]');    var unit = $('form[name="twp-tool-distance-form"] input[name="unit"]');    var speed = game.unit.speed($(unit).val());    if (!/^\d{3}\|\d{3}$/.test($(from).val()))    {        $(from).css('border-color', 'red');        return false;    }    if (!/^\d{3}\|\d{3}$/.test($(to).val()))    {        $(to).css('border-color', 'red');        return false;    }    var data = {        from : from,        to : to,        speed : speed    };    $.ajax({        url : base_url+'index.php',        type: 'POST',        dataType: 'json',        data: data,        cache : false    }).done(function(response) {        alert(response);    });    return false;});如果我data从ajax调用中删除,它可以..有什么建议吗?谢谢!
查看完整描述

2 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

我认为您需要将字符串作为数据值。可能是jQuery内部的某些内容未能正确地对To&From对象进行编码/序列化。


尝试:


var data = {

    from : from.val(),

    to : to.val(),

    speed : speed

};

还要注意以下行:


$(from).css(...

$(to).css(

您不需要jQuery包装器,因为To&From已经是jQuery对象。


查看完整回答
反对 回复 2019-12-03
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

尝试设置processData:在像这样的ajax设置中为false


$.ajax({

    url : base_url+'index.php',

    type: 'POST',

    dataType: 'json',

    data: data,

    cache : false,

    processData: false

}).done(function(response) {

    alert(response);

});


查看完整回答
反对 回复 2019-12-03
  • 2 回答
  • 0 关注
  • 623 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信