繁体   English   中英

如何编写条件window.location.href

[英]How to write conditional window.location.href

我有以下javascript行用于网页重定向。

 window.location.href ="<?php echo $this->url->link('product/category', 
'path=' . $data['category_id']);?>_"+child_select; 

child_select是一个JavaScript变量。 我只想显示_child_select ieundescore和任何child_select值。

而且我必须在同一条语句中执行此操作,而无需重复代码。 我怎样才能做到这一点?

您可以使用条件/三元运算符? : ? :检查child_select是否存在。 如果不使用,则不使用_child_select的URL。

在变量中设置基本路径的值。 如果child_select存在,则将_附加到基本路径。

var path = "<?php echo $this->url->link('product/category', 'path=' . $data['category_id']);?>";

window.location.href = child_select ? path + '_' + child_select : path;
//                                  {  If present then append   }

上面的陈述相当于

if (child_select) {
    window.location.href = "<?php echo $this->url->link('product/category', 'path=' . $data['category_id']);?>_" + child_select;
} else {
    window.location.href = "<?php echo $this->url->link('product/category', 'path=' . $data['category_id']);?>";
}

然后您可以检查child_select未定义:

if (typeof child_select != 'undefined')
{
   window.location.href ="<?php echo $this->url->link('product/category', 
'path=' . $data['category_id']);?>_"+child_select;
} else {
   window.location.href ="<?php echo $this->url->link('product/category', 
'path=' . $data['category_id']);?>";
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM