有人可以帮我转义双引号
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')"
但得到了
TypeError (TypeError)
使用heredoc,它甚至读起来更好:
iframe_name = page.execute_script <<JS
$('#card-element').find('[name*="__privateStripeFrame"]').first().attr('name')
JS
> https://blog.appsignal.com/2016/12/21/ruby-magic-escaping-in-ruby.html
在 Ruby 中,您可以使用反斜杠字符转义双引号。
"foo"bar"" => 'foo"bar"'
对不起,伙计们的问题在
page.execute_script
使用此方法返回类型错误
尝试使用
page.evaluate_script
为了存储返回值
frame_name = page.evaluate_script("$('#card-element').find('[name*="__privateStripeFrame"]').first().attr('name')")