1

目前我正在使用提交时使用 javascript 验证所有表单输入字段并在字段不完整时引发错误的表单。但是,我有一个选择,当检查时,将禁用一些输入,即将到来stop the errors from being thrown if the textbox is disabled.

相关代码包括:

html:

                <select name="os" id="os">
                    <option>-Select-</option> 
                    <option value="A">Android</option> 
                    <option value="I">iOS</option>
                     <option value="W">Windows Mobile</option> 
                 </select> <font color="#CC0000">*</font>

js

if (document.FrontPage_Form1.Action[0].checked==true) 
    {
        var dropvalue = document.getElementById("os");
        var dropText = dropvalue.options[dropvalue.selectedIndex].text;


            if (dropText=="-Select-") && (dropvalue.disabled=false)
            {
                document.getElementById("OS_Msg").style.display='';
                document.getElementById("OS_Err").style.display='';

                valid==false;
            }

    }

jQuery 禁用

<p><input type="checkbox" name="noPhone" id="noPhone">: My Device does not have a phone number.</p>

<script type="text/javascript">

            $("#noPhone").click(onCheckChange).change(onCheckChange);

                        function onCheckChange() {
                          if ($("#noPhone").is(':checked'))
                          {
                            $("select.focusDrop").attr('disabled', 'disabled');
                            $(":text").attr('disabled', 'disabled');
                          }
                          else
                          {
                            $("select.focusDrop").removeAttr('disabled');
                            $(":text").removeAttr('disabled');
                          } 
                        }

            </script>
4

1 回答 1

1

除了缺少一组环绕 的括号外(dropText=="-Select-") && (dropvalue.disabled=false),您正在设置一个值而不是将其与

dropvalue.disabled=false

它应该是

dropvalue.disabled==false

正如 Guffa 所指出的,valid==false;应该是valid=false;

于 2012-07-11T15:17:38.420 回答