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

そして、グッファが指摘したようにvalid==false;valid=false;

于 2012-07-11T15:17:38.420 に答える