Tôi gặp sự cố khi cố gắng sử dụng biến số đường ray trong mã javascript.Báo giá thoát khỏi Biến Rails khi sử dụng chúng cho Javascript?
Ví dụ, tôi có thể xác định một link_to_remote, với tham số :complete => "alert('my_var');"
Nếu my_var = "I'm testing."
, sau đó mã javascript sẽ phá vỡ do báo giá duy nhất đóng mã sớm. Nếu tôi thử sử dụng escape_javascript(my_var)
để báo giá được chuyển thành \'
, có vẻ như không khắc phục được sự cố.
Tôi nhận thấy rằng khi bạn thử alert('I\'m testing');
có vấn đề, nhưng nếu bạn thực hiện alert('I\\'m testing')
, nó sẽ hoạt động. Vì escape_javascript chỉ biến thành '
thành \'
, thay vì \\'
, ai đó có đề xuất về cách xử lý việc này?
Cảm ơn! Eric
cũng có một bí danh "j" đơn giản: "'" + j (myvar) + "" " – Kodak
Ghi chú cho người đọc gần đây: như đường ray 3.2 (và có lẽ trước đây) phương pháp là' escape_javascript' chứ không phải ' javascript_escape' –