javascript - if else javascript 语句

标签 javascript html

我有一段代码想要执行,但不知道如何执行。我有一个页面,您可以在英语和法语两种语言之间进行转换。仅当页面为法语而不是英语时,我才想在我的 index.html.erb 文件中运行脚本。

此代码位于我的index.html.erb 文件的开头。

<script>
  var a = <%= params[:locale]%>
  if(a == "fr")
  {
   <script type="text/javascript">
    /* <![CDATA[ */
    var google_conversion_id = 1001007867;
    /* ]]> */
  </script>
  <script type="text/javascript" src="//www.googleadservices.com/pagead/conversion.js">
  </script>
  <noscript>
    <div style="display:inline;">
    </div>
  </noscript>
}
</script>

我不确定我的代码是否正确。任何帮助表示赞赏。

最佳答案

你不能嵌套脚本标签,如果满足你的条件,你可以附加一个脚本标签,等等。喜欢:

<script>
var a = <%= params[:locale]%>;
console.log(a) /* THIS REALLY LOGS THE EXPECTED VALUE ? */
if(a == "fr")
{
     var google_conversion_id = 1001007867;
     var bh = document.createElement('script'), s = document.getElementsByTagName('script')[0];
     bh.type = 'text/javascript';
     bh.src = '//www.googleadservices.com/pagead/conversion.js';
     s.parentNode.insertBefore(bh, s);

}
</script>
  <noscript>
    <div style="display:inline;">
    </div>
  </noscript>

更好的解决方案是如果您的模板语言例如 <%= %>支持 if else 条件

检查浏览器控制台是否有错误

关于javascript - if else javascript 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27841733/

相关文章:

javascript 日期增量

javascript - 需要 JS HTMLCanvas 帮助

javascript - 使用显示属性淡入淡出

javascript - express.js 如何在不使用 Handlebars 刷新所有页面的情况下更新 UI

javascript - 将 Chrome 控制台与 Firebase 结合使用

javascript - Angular Provider/JS - 如何从 $http().then() 访问 'uncle method' ?

javascript - 简单的基于网络的图标编辑器

android - 如何使用 &lt;input type ="text"> 在 android/chrome 上打开数字键盘?

jQuery.append 不工作

javascript - 在悬停其他非 CSS 或 JS 父级的 DIV 时显示 DIV