-2

私は次のものを持っています:

<form action="file.php" method="post" enctype="multipart/form-data"  name='form' id='form'>
    <table border="0" cellpadding="0" cellspacing="0" width="100%" align="center"  style="BORDER-RIGHT: #fe03b4 1px solid; BORDER-TOP: #fe03b4 1px solid; BORDER-LEFT: #fe03b4 1px solid; BORDER-BOTTOM: #fe03b4 1px solid">
        <tr>
            <td style="margin-left: 3px">
                <b><font color="#f803f8" size="1">Eyes</font></b>
            </td>
            <td>
                <select size="1" name="eyes" class="input" id="eyes" style="BACKGROUND-COLOR: #f7ed79; COLOR: #000000; font-family: Arial; font-size: 10px; width:150px;">`
                    <option selected="selected" value="">Select</option>
                    <option value="1"<? if ($eyes=="1") echo "selected"; ?>>Blue</option>
                    <option value="2"<? if ($eyes=="2") echo "selected"; ?>>Green</option>
                </select>
            </td>
        </tr>
    </table>

    <br />

    <table border="0" cellpadding="0" cellspacing="0" width="100%" align="center"  style="BORDER-RIGHT: #fe03b4 1px solid; BORDER-TOP: #fe03b4 1px solid; BORDER-LEFT: #fe03b4 1px solid; BORDER-BOTTOM: #fe03b4 1px solid">
        <tr>
            <td style="margin-left: 3px">
                <b><font color="#f803f8" size="1">Description</font></b>
            </td>
            <td>
                <textarea rows='5' name='description'  cols='120'><? echo "$description"; ?></textarea>
            </td>
        </tr>

    </table>

    <br />

    <table width="100%" border="0" align="center">
        <tr>
            <td  align="center">
                <input name='Update' type='submit' onClick="if(document.form.eyes.value == ''){ alert('Eyes Color?'); document.form.eyes.focus(); return false; } else 
                if(document.form.description.value==''){ alert('Description?'); document.form.description.focus(); return false; } else
                { document.form.submit(); parent.scrollTo(0,0); }" value='Update' style="width:100%; font-size:10px" />
            </td>
        </tr>
    </table>
</form>

最初のアラート(目)は機能しますが、2番目のアラートはアラートを表示せず、テキストが挿入されていなくても保存されます。

データベースのEYES列が0として定義されている場合、オプション1または2を選択してUPDATEを実行できます。

以前に保存されていない場合、データベースのテキストフィールドを更新できますか?つまり、データベースのテキスト列がNULL(テキストが保存されていない)であり、SAVEなしでUPDATEを実行しようとしています。

ここで何か助けはありますか?

4

1 に答える 1

1

ボタンの種類がsubmitだからです。送信を手動で制御したい場合は、ボタンに変更してください。または、代わりにフォーム送信イベントを使用し、送信イベントでフォームを検証し、有効でない場合は送信をキャンセルします。

http://msdn.microsoft.com/en-us/library/ie/ms536972(v=vs.85).aspx

于 2012-08-10T10:13:37.883 に答える