Ruby on rails Ruby转义双引号

Ruby on rails Ruby转义双引号,ruby-on-rails,ruby,Ruby On Rails,Ruby,有人能帮我转义双引号吗 iframe_name = page.execute_script "$('#card-element').find('[name*="__privateStripeFrame"').first().attr('name')" 试用 iframe_name = page.execute_script "$('#card-element').find('[name*=%Q[__privateStripeFrame]').first().attr('name')" 及

有人能帮我转义双引号吗

 iframe_name = page.execute_script "$('#card-element').find('[name*="__privateStripeFrame"').first().attr('name')"
试用

 iframe_name = page.execute_script "$('#card-element').find('[name*=%Q[__privateStripeFrame]').first().attr('name')"

但是得到

TypeError (TypeError)

使用heredoc,它甚至读起来更好:

iframe_name = page.execute_script <<JS
  $('#card-element').find('[name*="__privateStripeFrame"]').first().attr('name')
JS
iframe\u name=page.execute\u脚本

在Ruby中,用反斜杠字符转义双引号

"foo\"bar\"" => 'foo"bar"'

对不起,伙计们,问题出在这里了

page.execute_script
使用此方法返回TypeError

尝试使用

 page.evaluate_script
为了存储返回的值

frame_name = page.evaluate_script("$('#card-element').find('[name*=\"__privateStripeFrame\"]').first().attr('name')")

最后一个选项运行良好:“$”(“#card element”).find(“[name*=\”\uu privateStripeFrame\”).first().attr('name')”=>“$(“#card element”).find(“[name*=\”\uu privateStripeFrame\”).first().attr('name')”
确保传递正确的参数iframe_name=part中可能存在错误@vladimirProp please的可能重复项。问题出在其他方面查看我的答案也有一些编辑可能会使用heredoc分隔符来推断!@SergioTulentsev确实如此。问题出在其他方面查看我的答案问题出在其他方面查看我的答案查看我的答案
frame_name = page.evaluate_script("$('#card-element').find('[name*=\"__privateStripeFrame\"]').first().attr('name')")