【问题标题】:Uncaught SyntaxError: missing ) after argument list - sending two values via AJAXUncaught SyntaxError: missing ) after argument list - 通过 AJAX 发送两个值
【发布时间】:2020-11-25 12:24:04
【问题描述】:

我想通过 AJAX 发送两个值。

我的 jQuery 函数(在整个页面上使用单个值工作正常):

function randomfunction(qq, xxx)
  {
      jQuery.ajax({
       type: "POST",
       url: "https://someurl.php",
       data: "qq="+qq+"&qqq="+xxx,
       cache: false,
       success: function(data)
       {
         jQuery("#stuff"+id).html(data);
       }
     });
 }

我触发它的输入:

echo"<input class='inputbutton' style='width: 122px!important;' type='button' id='button_id' value='Anfordern' onClick='randomfunction($qq, $xxx);'>";

我在我的页面上使用这种类型的设置,使用单个值,效果很好。 现在我开始使用 2,它总是给我错误 Uncaught SyntaxError: missing ) after argument list

我已经检查并尝试了这些解决方案:

I want to pass two parameters in onclick, one is a function & another is a div id

How to send multiple data fields via Ajax?

data: {qq: qq, xxx: xxx},

SyntaxError: missing ) after argument list

JavaScript: SyntaxError: missing ) after argument list

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Missing_parenthesis_after_argument_list

并尝试使用JSLintJSHint 进行调试。我还检查了我的 PHP 后端,如果我使用 https://randomlink.php?qq=stuff&amp;xxx=stuff2 之类的东西手动访问它,它可以完美运行。

我什至每次更改某些内容以防止加载旧代码时都会清除缓存。我只是不明白出了什么问题。谁能帮我?我是不是太盲目了,看不到明显的东西?

【问题讨论】:

  • 你能控制台记录进入函数的值吗?喜欢console.log(qq, xxx)
  • 感谢您的提示!我不能这样做。它不会记录一些东西。这让我想到,我从 PHP 到 JS 的转移有一个错误。我发布了一个解决它的答案。

标签: jquery ajax


【解决方案1】:

好的,显然我在代码的错误方面进行了搜索。错误不在函数中,而是将值从PHP 传递到JS。如果其中一个值是字符串,例如电子邮件地址,则需要将其引用。 我通过添加到我的按钮来解决它:

echo"<input onClick='randomfunction(\"$qq\", $xxx);'>";

参考: How do I pass a PHP string into a Javascript function call?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-13
    • 1970-01-01
    • 1970-01-01
    • 2021-03-19
    相关资源
    最近更新 更多