私はすべてを見てきましたが、私のために働いたものは何も見つかりませんでした。ユーザーが不完全なフォームを送信しないようにしようとしています。私はデフォルトで "submit"を無効にしており、すべての入力が提供されている場合は、 "disable"属性を削除することを意図しています。何らかの理由で、送信ボタンがまだ無効です。私は以下のコードがうまくいくはずだと信じていますが、私は何か不足しているかもしれないと思います。入力が空のjqueryの場合はサブミット/ポストボタンを無効にする
FYI - Jquery datepickerとtimepickerを使用して、ユーザーが日付と時刻を選択できるようにしています。
誰でも初心者を助けることができますか?
<script>
\t $(document).ready(function() {
\t $('.field input').keyup(function() {
\t
\t var empty = false;
\t $('.field input').each(function() {
\t if ($(this).val().length == 0) {
\t empty = true;
\t }
\t });
\t
\t if (empty) {
\t $('.actions input').attr('disabled', 'disabled');
\t } else {
\t $('.actions input').removeAttr('disabled');
\t }
\t });
\t });
\t
</script>
<div>
\t <form class="form" name="frm1" method="POST">
\t
\t <div class='field'>
\t <label for="datepicker">Day:</label>
\t <input type="text" name="txtDate" id="datepicker"> </br>
\t </div>
\t
\t <div class='field'>
\t <label for="fromtime">From:</label>
\t <input type="text" name="txtStartTime" id="fromtime"></br>
\t </div>
\t
\t <div class='field'>
\t <label for="totime">To:</label>
\t <input type="text" name="txtEndTime" id="totime"></br>
\t </div>
\t
\t <div class='droppies'>
\t \t <label for="level">Level</label>
\t \t <select name="level" id="level">
\t \t \t \t <option selected value='%'></option>
\t \t \t \t <option value='Beginner'>Beginner</option>
\t \t \t \t <option value='Intermediate'>Intermediate</option>
\t \t \t \t <option value='Advanced'>Advanced</option>
\t \t \t \t <option value='%'>Any levels</option>
\t \t \t \t
\t \t </select>
\t </div>
\t
\t <div class='actions'>
\t \t <input type="submit" name="submit" value="search" disabled="disabled">
\t </div>
\t </form>
\t
</div>
シンプル...しかし、それが動作し、私が達成したかったことを正確に行います。ありがとうAlden! –
@ YvanNasrこのメソッドはjavascriptメソッドではないことに気が付かなければなりません。あなたの方法に代わるものを提案していますが、直面している問題は解決しません。 –
問題を解決します。それは質問に答えません。 –