JavaScript中的奇怪字符串concat

JavaScript中的奇怪字符串concat,javascript,concat,Javascript,Concat,我对jQuery中的字符串concat感到奇怪,如下所示: var name = button.data('name') var emailName = button.data('email') var userName = button.data('username') var userStatus = button.data('active') var userId = button.data('id') alert(u

我对jQuery中的字符串concat感到奇怪,如下所示:

      var name = button.data('name')
      var emailName = button.data('email')
      var userName = button.data('username')
      var userStatus = button.data('active')
      var userId = button.data('id')
      alert(userId)
      var actionUpdate = "{{action('UserController@update', "+userId+")}}" 
      alert(actionUpdate)
用户id的结果/警报是28723050-71e9-11e7-a0a9-e9f620359699(uuid作为用户id),但当我参与/加入时,我得到的actionUpdate变量是{{action('UserController@update“,“userId”)}}而不是{{action('UserController@update“,”28723050-71e9-11e7-a0a9-e9f620359699“}}如我所料

我试图用concat或+=连接这些字符串和变量,但没有得到预期的结果


如果出于某种奇怪的原因,您真正想要的是

{{action('UserController@update“,“28723050-…9699”)}

UserController@update
和用户ID周围的双引号,我认为您需要

  var userId = button.data('id')
  alert(userId)
  var actionUpdate = "{{action('UserController@update', \""+userId+"\")}}" 
  alert(actionUpdate)

(也就是说,您需要在连接部分的任一侧添加一个转义双引号字符。)

谢谢John,关于“转义字符”,这项工作正如我现在所期望的,我猜“{,{,},}”在JS或Jquery中有特殊意义,所以我写这行代码如下:

var actionUpdate=“{action('UserController@update“,”“+userId+”)}”


希望它对希望将表单提交操作更改为laravel controller的用户有用。

请仔细检查您正在执行的连接是否正确。我没有看到语法错误。事实上,这不可能完全是您正在做的事情,正如您所说,结果中包含了
,因为您给出的示例不会在结果中包含双引号,您是对的,我在JSFIDLE中进行了尝试,效果也很好,我的目的是使用laravel在引导模式中更新用户,因此我需要将此用户ID作为变量,而不是”userId”作为字符串..它在上运行正常,但在我的应用程序上仍然存在问题,尝试了userId.toString(),但仍然没有成功。我的意思是,前缀为\(在{,}之前加反斜杠),但在上面没有显示。