【问题标题】:Passing in String to jQuery function as Object将字符串作为对象传递给 jQuery 函数
【发布时间】:2013-01-21 03:20:12
【问题描述】:

这可能是一个愚蠢的问题,但我正在尝试传递我以以下格式构建的设置字符串:

"setting1" : "value", "setting2" : "value", "setting3" : "value"

以上内容保存到名为 args 的字符串中。没什么特别的,但我想将它作为参数传递给函数。

$('#element').functionName({ args });

我不确定我在这里错过了什么...... 谢谢!

【问题讨论】:

  • args 到底是什么?你被什么困住了?
  • 抱歉,args 是上面字符串的 var 名称...我会编辑
  • 备份一点到字符串的来源。修改它的源以创建对象或 JSON 更有意义,而不是如图所示格式化的字符串

标签: jquery json string object arguments


【解决方案1】:

如果你真的有这样的字符串:

'"setting1" : "value", "setting2" : "value", "setting3" : "value"'

您可以使用JSON.parse 解析它并从中获取一个对象,如下所示:

var args = JSON.parse( "{" + str + "}" );
$('#element').functionName(o);

但实际上您可能只想从一开始就创建这样一个对象而不是字符串,例如:

var args = {"setting1" : "value", "setting2" : "value", "setting3" : "value"};
$('#element').functionName(args);

【讨论】:

    【解决方案2】:

    没有愚蠢的问题。试试:

    var args = JSON.parse("{'setting1' : 'value', ...}");
    

    然后将“args”变量传递给你的函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多