我有一段代码想要执行,但不知道如何执行。我有一个页面,您可以在英语和法语两种语言之间进行转换。仅当页面为法语而不是英语时,我才想在我的 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/