使用基于选项选择的jquery隐藏元素

时间:2010-12-23 19:02:57

标签: javascript jquery forms

我有两个表单和一个选择器。

这是我的代码 -

<select>
<option value="1">Pay</option>
<option value="2">Goog</option>
</select>

<form id="pp">
<input type="text">
</form>

<form id="cc">
<input type="text">
</form>

现在,如果选择了选项1,我想隐藏表格CC。如果2隐藏形式PP。

我如何用js或jquery做到这一点?感谢

2 个答案:

答案 0 :(得分:8)

试试这个(使用jQuery):

$("select").bind("change", function() {
    if ($(this).val() == "1") {
        $("#pp").show();
        $("#cc").hide();
    }
    else if ($(this).val() == "2") {
        $("#pp").hide();
        $("#cc").show();
    }
});

此外,您可以在用户选择任何选项之前使用.hide()隐藏这两个表单,如上所示。

  • bind将事件处理程序附加到选择框的“更改”事件。当用户更改选择的选项时会触发此操作。
  • 在处理程序内部,val用于确定当前所选选项的值。
  • show()hide()用于正确的表单,具体取决于所选的选项。

工作示例:http://jsfiddle.net/andrewwhitaker/faqZg/

答案 1 :(得分:1)

    <script>
    function Hide(val)
    {
    if(val==1)
{
    document.getElementById('cc').style.display='none';
    document.getElementById('pp').style.display='inline';
    }
    if(val==2)
{ 
   document.getElementById('pp').style.display='none';
    document.getElementById('cc').style.display='inline';
    }
} 
   </script>

    <select onchange="Hide(this.value);">
    <option value="">Please Select</option>
    <option value="1">Pay</option>
    <option value="2">Goog</option>
    </select>

    <div id="pp">
    <input type="text">
    </div>

    <div id="cc">
    <input type="text">
    </div>