从php获取href并在JQuery中使用element

时间:2018-04-04 16:21:12

标签: javascript php jquery

我有xyz.php和工作菜单<li>元素。我需要从PHP中获取href在Java脚本中使用它来导航。所以我有li标签列表,在代码中它显示了一个例如。每个li标记都有唯一的href

我的问题是:如果我只从列表中选择一个li元素。我想在JavaScript的IF条件中使用li的关联href,ELSE部分选择了多个Li。该代码正在为其他部分工作。但是,我遇到了IF部分的问题。

我没有从PHP获得href值。你可以在php中从$xyz['url']获得'href'。

xyz.php
   <div class="global-wrapper">
     <ul class="list">
       <li> 
         <a href="#" data-categoryid="<?php echo $xyz['url']; ?>" class="loadProducts"></a>
         <input id="retreat-<?php echo $xyz['api_id']; ?>" class="custom-check-input more-filter-experience" type="checkbox" value="<?php echo $xyz['name']; ?>" data-home-location="<?php echo $xyz['api_id']; ?>">
         <label class="custom-check-label" for="retreat-<?php echo $xyz['api_id']; ?>"></label>
     </li>
   </ul>
</div>   

这里是java脚本代码:

xyz.js
     if(retreatIdArray.length === 1  && exploreDate === undefined) {
         var categoryId = $('.global-wrapper').find('.loadProducts').attr('data-categoryid');;  

             window.location.href = "/categoryId";   // having issue
      } else{
             window.location.href = '/destination';
      }

1 个答案:

答案 0 :(得分:0)

你写了undefine而不是undefinedif内的陈述永远不会成真。

另外,要检查undefined,最好使用typeof

if(retreatIdArray.length === 1 && typeof exploreDate == 'undefined') {
    retreats = $('.global_wrapper').find('.custom-check-input').val();
    window.location.href = '/href';
} else {
    window.location.href = '/destination';
}

注意:未经测试的代码,您可能需要根据需要进行调整。如果有效,请告诉我。