如何在 JavaScript 中启用 href

how to enable a href in javascript

本文关键字:启用 href JavaScript      更新时间:2023-09-26

我有一个表单,如下所示:

<form action="" method="get">
    <select>
        <option value="0">-</option>
        <option value="1">P1</option>
        <option value="2">P2</option>
        <option value="3">P3</option>
    </select>
    <a href="page6.html" onclick="return false;">New Page</a>   
</form> 

并且我想仅在选项值不是"-"时才启用 href。你能帮帮我吗?

谢谢

这是你的代码:

checkSelect = function ()
{
    var mySelect = document.getElementById("mySelect");
    return mySelect.options[mySelect.selectedIndex].text !== "-";
}
<form action="" method="get">
    <select id="mySelect">
        <option value="0">-</option>
        <option value="1">P1</option>
        <option value="2">P2</option>
        <option value="3">P3</option>
    </select>
    <a href="page6.html" onclick="return checkSelect();">New Page</a>
</form>

你想要的是添加一个onChange事件到选择中,然后在调用change函数时,你可以做一个检查,看看你是否要用这个值来改变你的页面,参见下面的代码,例如

<form action="" method="get">
    <select onchange="getValue(this);">
        <option value="0">-</option>
        <option value="1">P1</option>
        <option value="2">P2</option>
        <option value="3">P3</option>
    </select>
</form>
<script>
    function onChange(sel){
        if(sel.value != "-"){
            document.location.href = newUrl;
        }
    }
</script>

它应该看起来像这样与onChange事件,+1到大卫

<form action="" method="get">
                            <select id="sel" onchange="myFunction()">
                                    <option value="0">-</option>
                                    <option value="1">P1</option>
                                    <option value="2">P2</option>
                                    <option value="3">P3</option>
                            </select>
                <a  id="link">New Page</a>

那么myFunction应该看起来像这样

if(document.getElementById("sel").value != "-"){
 document.getElementById("link").href = "your link here";
}
else{
 document.getElementById("link").href = "#";

}

这是工作代码

$(function() {
  $("select").change(function() {
    if ($("select option:selected").val() != "0") {
      $("a").attr("onclick", "javascript:return true;")
    } else {
      $("a").attr("onclick", "javascript:return false;")
    }
  })
})

这是JSFiddle代码

    function changeHref() {
        console.log(this.value)
        if (this.value == 0) {
                document.getElementById("anc").href="";            
        } else {
            document.getElementById("anc").href="page6.html";
        }
    }
    
    var select = document.getElementById('sel');
    select.addEventListener('change', changeHref, false);
    <form action="" method="get">
        <select id='sel'>
                <option value="0">-</option>
                <option value="1">P1</option>
                <option value="2">P2</option>
                <option value="3">P3</option>
        </select>
        <a id='anc' href="" onclick="return false;">New Page</a>
    </form>