如果网址未定义,则隐藏按钮

时间:2019-10-23 21:36:37

标签: jquery button hide

如果值未定义,我想隐藏一个url按钮。我传递了一个属性,然后添加到一个类中。

<script="text/javascript">
.........
 j('.url').attr('href',ContextPath + home);

</script>

按钮的定义类似于

<a href="#header" class="btn btn-black txt-white url" title="button">
    <i class="fa fa-user fa-fw" aria-hidden="true"></i>
</a>

如果url未定义,我想隐藏按钮。我写了这个jquery代码,但是没用。

<script type="text/javascript">
    jQuery (document).ready(function($) {

    $('url').children('a').each(function() {
        if(($(this).attr('url')=='undefined'))
        $(this).hide();
    })
})  
 </script>

如果您按下按钮,则会发送到url http:/www.home/pagenull,我希望按钮隐藏起来,而不是将您发送到url http:/www.home/pagenull,如果按钮不显示,则显示该按钮网址不是http:/www.home/pagenull。我已经尝试了答案,但它们不起作用 有想法吗?

2 个答案:

答案 0 :(得分:2)

您的语法不正确。


更改:

<script="text/javascript">
.........
 j('.url').attr('href',ContextPath + home);

</script>

收件人:

<script="text/javascript">
 $('.url').attr('href',ContextPath + home);
</script>

以下是一些问题:

  • j('.url')是无效的jQuery;从> j('.url')到> $('.url')
  • 这些时间段:.........可能会引起问题。

更改:

jQuery (document).ready(function($) {

    $('url').children('a').each(function() {
        if(($(this).attr('url')=='undefined'))
        $(this).hide();
    })
}) 

收件人:

$(document).ready(function() {
    $('.url').each(function() {
        if( $(this).attr('href') == undefined )
        $(this).hide();
    });
});

以下是一些问题:

  • 忘记了“。在班级选择者面前;来自> $('url') to > $('。url')
  • .attr('url')不是$(this)的有效属性;从> .attr('url')到> .attr('href')
  • “未定义”不应为字符串;从>'undefined'到> undefined
  • 缺少结尾“;” 〜使代码更易于阅读。
  • .each运算符未定位正确的元素;从> $('url').children('a').each到> $('url').each

答案 1 :(得分:0)

我将执行与Soulete相同的操作,但是我将添加一行以在循环迭代期间将元素引用到变量。然后,我将创建一个包含更多测试的决策结构。

<script>
    $(function () {

        $(".url").each(function () {
            var r = $(this).attr('href')

            if (r === undefined || r === '#') {
                $(this).hide()
            }

        })
    })
</script>