0

人们如何从 javascript 检查表的值。我在轨道上使用红宝石。我这样做了:

$(document).ready(function() {
  if ("<%= @player.name %>" == "" ) {
   //show some divs
  } 
});

但它不起作用。即使玩家的名字是空的,div也不会显示。我想检查玩家的名字是否为空,然后它应该显示一些 div。谢谢。

4

1 回答 1

1

第一个问题是您使用<%而不是<%=. 其次,假设您的javascript代码将是@player.namejohn

$(document).ready(function() {
  if (john == "") {
   //show some divs
  } 
});

看到问题了吗?您@player.name将被视为 javascript 变量(不存在),而不是字符串。

最后,如果您@player.name应该包含双引号,您的 javascript 将再次被破坏,因此您必须使用escape_javascript.

解决方案:

$(document).ready(function() {
  if ("<%= j @player.name %>" == "") {
   //show some divs
  } 
});
于 2013-07-02T08:24:32.847 回答