1

状況は次のとおりです。編集可能なテキスト領域があります。ユーザーがテキスト領域を選択して変更を加えると、保存ボタンが表示されます。テキスト領域の外をクリックすると、ボタンが消え、変更を加えると、変更を保存するかどうかを尋ねるアラートが表示されます。ただし、保存ボタンをクリックした場合にアラートが表示されないようにし、ボタンに関連付けられた onclick イベントを介して保存機能を起動する必要があります。次のコードは、保存ボタンを押しても警告を発し、保存ボタンの onClick コードを実行しません。これを機能させる最良の方法は何ですか?ありがとう!!!

$(".userNoteTextArea").focus(function() {
$("#noteTextAreaButtons").show();
}).bind('focusout', function(event) {
if (!$(event.target).is('#noteTextAreaButtons')) {
    $("#noteTextAreaButtons").hide();
    if (stillNotSaved == true) {
        if (confirm("Save changes?")) { //Ok button pressed...
            storeUserNote2(); //save note
        }
    }
}
});

保存ボタンのコード:

<div id="noteTextAreaButtons" style="display:none;"><input id="saveUserNoteButton" class="buttonAutoWide opaque" type="button" value="Saved" onClick="storeUserNote2(); this.value='Saved'"/></div>

編集: このファイルはhttp://gospelriver.com/favhymns/favhymns_temp.htmlで表示できます。[マイ ソング] ボタンをクリックします。

4

2 に答える 2

0

私がやっていることは、ボタンのアプローチ全体を忘れて、変更を加えた後にテキスト領域を終了するときに自動プロンプトを使用することだと思います-OK =保存、キャンセル=変更を破棄します。

于 2013-02-02T19:50:10.683 に答える
0

以下のように新しい関数を含めます

function SaveClicked(){
    stillNotSaved = false;
    storeUserNote2(); 
    this.value='Saved';
}

stillNotSaved使用した変数がglobal variablejs 内にあることを願っています。inputそして、以下のようにコードを修正してください。

<input id="saveUserNoteButton" class="buttonAutoWide opaque" 
            type="button" value="Saved" onClick="SaveClicked();"/>
于 2013-01-31T06:19:28.357 に答える