我得到我的回应如下

var val = {"Type"=>"D","Number"=>33"}


从上面我试图改变这样

var MyArray = {"Type": "D", "Number": "33"};


for(key in MyArray)
{
  alert("key " + key
    + " has value "
    + MyArray[key]);
}


我尝试替换,替换所有但不工作的。有什么建议么?

从注释粘贴服务器端代码...

 new_transfer_header = @params['my_extra_param']
 p new_transfer_header,'------------ ew_transfer_header----------,new_transfer_header.class
 WebView.execute_js("replaceDeliveryWithScanUnit('#{new_transfer_header}')")

puts result as "{\"Type\"=>\"D\", \"Number\"=>\"33\"}

最佳答案

var val = {"Type"=>"D","Number"=>33"}


无效的JavaScript-由于解析失败,因此无法在同一脚本/脚本块中对其进行修复。

可能您需要消除服务器上为此脚本脚本完成的额外HTML编码。

如果它是某些AJAX调用接收到的文本,则您应该能够用相应的字符替换"和类似的值,而不是用JSON.parse进行解析。

09-30 16:07
查看更多