0

次のボタンでデータを保存しようとしています。次のボタンをクリックしてフォームに入力した後、「データを送信するかどうか」を尋ねるポップアップダイアログボックスが開きます。

だからこれのために私がしたこと

送信ボタンには、次のコードがあります。

 <?php echo $this->Form->submit('Next', array('class' => 'btn btn-primary','id'=>'movesubmitbtn'));?>

その Cakephp 送信ボタン

ここに私のjavascriptコードがあります:

         <script type="text/javascript" charset="utf-8">
         $(document).ready(function() {
         // Interrupt the submit function
    $('#movesubmitbtn').click(function(){
        if(confirm('This is your final submission of the data. Do you want to continue?')) { 
            return true;
        }
        else { 
            return false;
        }
    });
           movesubmitbtn
          });

        </script>

データが存在する場合にのみポップアップを取得するように無効化プロパティを追加する方法を教えてください。

4

2 に答える 2

0

jQuery の使用;

$('form').on('change', function(){
    // this will be triggered with every 'change' inside the form
    // e.g. Every time the user modifies a input
    // check if all (required) inputs contain a value
    if('' == $('#inputA').val() || '' == $('#inputB').val()){
        $('#movesubmitbtn').disabled = true;
    } else {
        $('#movesubmitbtn').disabled = false;
    }
});

ボタンの「クリック」ではなく、フォームの「送信」イベントに使用しているコードを配置することも検討してください。これにより、ユーザーがテキスト フィールド内で「Enter」キーを押した場合に、フォームが送信されなくなります。

于 2013-02-22T07:58:05.420 に答える
0

これを試して:

    <button id="submitBtn" type="submit" disabled="disabled">Submit</button>
    <textarea id="textBox" rows="10" onblur="if(this.value == ''){document.getElementById('submitBtn').disabled = true;} else {document.getElementById('submitBtn').disabled = false;}"></textarea>

またはより簡単に:

<button id="submitBtn" type="submit" disabled="disabled">Submit</button>
    <textarea id="textBox" rows="10" onblur="document.getElementById('submitBtn').disabled = (this.value == '');"></textarea>
于 2013-02-22T03:57:00.457 に答える