Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用散列映射到元素id';使用jQuery_Jquery_Ruby On Rails_Ruby - Fatal编程技术网

使用散列映射到元素id';使用jQuery

使用散列映射到元素id';使用jQuery,jquery,ruby-on-rails,ruby,Jquery,Ruby On Rails,Ruby,我有一个表单,我想把以前提交的数据放入正确的表单输入中。我有一个散列,其中键是表单输入的id选择器,值是特定表单输入的值 这就是我的散列的样子: @saved_answers = {"123456"=>"Tom", "2345678"=>"Brady", "789456"=>"Football"} 我将此散列传递给要在jQuery中使用的 # found in the view's script var form_saved_answers = '<%= @saved_

我有一个表单,我想把以前提交的数据放入正确的表单输入中。我有一个散列,其中键是表单输入的id选择器,值是特定表单输入的值

这就是我的散列的样子:

@saved_answers = {"123456"=>"Tom", "2345678"=>"Brady", "789456"=>"Football"}
我将此散列传递给要在jQuery中使用的

# found in the view's script
var form_saved_answers = '<%= @saved_answers.to_json %>'; 
#在视图的脚本中找到
var form_saved_answers='';
现在,当我在javascript文件中时,我想找到一个带有键的输入id,并将值放在输入字段中

这就是我被卡住的地方,我考虑过让每个键/值对成为一个数组,并运行每个函数。。。但必须有更直接的方法


有什么想法吗?

不使用
char
var form\u saved\u answers=
现在您可以执行
表单保存的\u答案['123456']
如果键不是数字,您可以
表单保存的\u答案。一些\u键

在js文件中尝试此操作

var parsed_json = JSON.parse(form_saved_answers);
var val_of_key = parsed_json[key]

一旦将哈希解析为JSON,就可以输入JSON对象,并将其作为
属性传递给表单输入。正如lisukorin所说,如果您将
form\u saved\u answers
设置为ERB的结果,而不使用引号,那么您可以在输入中使用JSON:

myInput=''


这将为您提供一个HTML元素的基本版本,其中包含您想要的值,可以根据需要使用jQuery进行操作。

为了澄清,您希望避免使用它?这是您试图创建的文本或选择输入字段吗?换句话说,你是需要在下拉列表中显示所有的值,还是只需要用一个值填写一个文本字段?@JakeShorty我想这将是我最大的问题。。。表单包含文本字段、选择项和收音机。。。。我想对于这个问题。。。我更好奇的是,你怎么能用一个文本字段来做这件事,然后再担心收音机和选择字段。