如何在JavaScript中隐藏span元素,如果anchor href属性为空

如何在JavaScript中隐藏span元素,如果anchor href属性为空

任务是在 < a>标签的href属性不存在或无效时隐藏 < span>标签。

假设我们在 < span>标签内部有 < a>标签。它会类似于以下方式:

<span><a href="www.google.com"></a></span>

现在,我们给元素添加ID以识别它们。

<span id="outer"><a id="inner" href="www.google.com"></a></span>

现在,当 < a>标签的“href”属性为空或无效时,我们需要隐藏 < span>标签。

方法:

  • 第一种情况是href为空。所以我们只需要检查为空的href,这可以使用原生JavaScript完成。
  • 在第二种情况中,href指向一个文件/位置。我们需要检查它是否是有效的文件/位置。现在,在这种情况下,当 href 存在时,我们检查它是否指向某个有效的文件或位置。我们将使用jQuery Ajax调用来完成。jQuery Ajax调用可以用于在幕后与Web服务器交换数据。如果返回错误,则文件的位置无效。

示例1: 下面的代码显示当href为空时。

<span id="outer">
    <a id="inner" href="">这是链接</a>
</span>

<script>
    if (document.getElementById("inner")
        .getAttribute("href") == "") {
        document.getElementById("outer")
            .style.display = "none";
        alert("文件不存在");
    }
</script>

输出:

如何在JavaScript中隐藏span元素,如果anchor href属性为空

示例2: 下面的代码是href指向一个位置的示例。

<script src=
"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js">
</script>

<span id="outer">
    <a id="inner" 
       href=
"https://jsonplaceholder.typicode.com/todos/1">
        这是链接
    </a>
</span>

<script>
    // 检查url是否有效的函数通过进行Ajax调用
    function doesFileExist(url) {
        .ajax({
            headers: {                   'Accept': 'application/json',
                'Content-Type': 'application/json',
                'Access-Control-Allow-Origin': '*'            },
            method: 'HEAD',
            url: url,
            success: function () {
                alert("文件存在!");
            },
            error: function () {
                // 隐藏外部span标签("#outer").hide();
                alert("文件不存在!");
            },
        })
    }

    // 存储href指向的位置
    url = $("#inner").attr("href");
    doesFileExist(url);
</script>

输出:

如何在JavaScript中隐藏span元素,如果anchor href属性为空

阅读更多:JavaScript 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程