Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当所选下拉选项的值大于0时,激活提交按钮_Javascript_Jquery - Fatal编程技术网

Javascript 当所选下拉选项的值大于0时,激活提交按钮

Javascript 当所选下拉选项的值大于0时,激活提交按钮,javascript,jquery,Javascript,Jquery,如果用户从下拉菜单中选择一个选项,我试图在代码中显示提交按钮。我想我可以通过使用value属性来实现这一点。请看下面我的代码,我已经包含了一些JavaScript,但我知道这可能是完全错误的 <select id="button1" class="button" title="Button 1"> <option value="0">--Please choose an option for the first blank--</option> <

如果用户从下拉菜单中选择一个选项,我试图在代码中显示提交按钮。我想我可以通过使用value属性来实现这一点。请看下面我的代码,我已经包含了一些JavaScript,但我知道这可能是完全错误的

<select id="button1" class="button" title="Button 1">
  <option value="0">--Please choose an option for the first blank--</option>
  <option id="buttonText1_1" class="buttonText" value="1">Arsenal</option>
  <option id="buttonText1_2" class="buttonText" value="2">Spurs</option>
  <option id="buttonText1_3" class="buttonText" value="3">Liverpool</option>
  <option id="buttonText1_4" class="buttonText" value="4">Man Utd</option>
  <option id="buttonText1_5" class="buttonText" value="5">Man City</option>
</select>
<div class="break"></div>
<select id="button2" class="button" title="Button 2">
  <option value="0">--Please choose an option for the second blank--</option>
  <option id="buttonText2_1" class="buttonText" value="1">Lampard</option>
  <option id="buttonText2_2" class="buttonText" value="2">Gerrard</option>
  <option id="buttonText2_3" class="buttonText" value="3">Scholes</option>
  <option id="buttonText2_4" class="buttonText" value="4">Viera</option>
  <option id="buttonText2_5" class="buttonText" value="5">Keane</option>
</select>

<div class="break"></div>

<button title="Submit Button" id="submitButton" class="button" onClick="submitClick()">
  <p id="submitText" class="buttonText">Submit</p>
</button>

我已在中使用此代码进行了修改。提前谢谢你

使用jQuery

$('select').on('change', function() {
    // shows the button if even one select has selected option
    $btn = $('#submitButton');
    $btn.hide();
    $('select').each(function() {
        if ($(this).val() != 0) {
            $btn.show();
            return false;
        }
    });
 });

我已经用jQuery把你的

分叉了:

$('select').on('change', function() {
    // shows the button if even one select has selected option
    $btn = $('#submitButton');
    $btn.hide();
    $('select').each(function() {
        if ($(this).val() != 0) {
            $btn.show();
            return false;
        }
    });
 });

如果您只想在两个选项都有值>“0”时才显示按钮,我已将您的

分叉。您可以通过以下方式进行检查:

VanillaJS:

function submitVisiblity() {
     // If you use numeric value into options' "value" attribute you should convert (parse) the option value from a string to an integer
     if (parseInt(document.getElementById("button1").value) > 0 &&

         parseInt(document.getElementById("button2").value) > 0) {
         document.getElementById('submitButton').style.display = 'block'
     } else {
         document.getElementById('submitButton').style.display = 'none'
     }
 }


 document.getElementById("button1").onchange = submitVisiblity
 document.getElementById("button2").onchange = submitVisiblity
JQuery:

$("#button1,#button2").on('change',function() {
  if (parseInt($("#button1").val()) > 0 && parseInt($("#button2").val()) > 0) {
    $('#submitButton').show()
  } else {
    $('#submitButton').hide()
  }
});


再见:)

如果您只想在两个选择值均大于“0”时显示按钮,您可以通过以下方式进行检查:

VanillaJS:

function submitVisiblity() {
     // If you use numeric value into options' "value" attribute you should convert (parse) the option value from a string to an integer
     if (parseInt(document.getElementById("button1").value) > 0 &&

         parseInt(document.getElementById("button2").value) > 0) {
         document.getElementById('submitButton').style.display = 'block'
     } else {
         document.getElementById('submitButton').style.display = 'none'
     }
 }


 document.getElementById("button1").onchange = submitVisiblity
 document.getElementById("button2").onchange = submitVisiblity
JQuery:

$("#button1,#button2").on('change',function() {
  if (parseInt($("#button1").val()) > 0 && parseInt($("#button2").val()) > 0) {
    $('#submitButton').show()
  } else {
    $('#submitButton').hide()
  }
});


拜拜:)

如果选择了第一个(可能有空值)选项,禁用“提交”按钮会更有效。很奇怪,你没有使用实际的按钮……你不需要按钮内部的,我想我从未见过。@Adam同意,如果选择了第一个(可能有空值)选项,则禁用“提交”按钮会更有效。非常奇怪的是,您没有使用实际的按钮……您不需要按钮内部的,我想我从未见过。@Adam同意,奇怪的是,你可以将按钮隐藏在select#each循环之外,并阻止一些DOM搜索。嗯,是的,在这种情况下,本可以保存隐藏按钮的一次迭代,但仍然可以完成任务。当然,它可以工作。我想指出的是,如果我错过了一些东西,你可以将按钮隐藏在select#each循环之外,并阻止一些DOM搜索。嗯,是的,在这种情况下,本可以保存隐藏按钮的一次迭代,但仍然可以完成任务。当然,它是有效的。我只是想指出一下万一我漏掉了什么