ナビゲーションによる検証

私は私のウェブサイトと左のメニューコントロールにいくつかのページを持っています。コントロールはあるページから別のページに移動するのに役立ちます。

My query is -> While user try to navigate to another page, I want to impose some validation like in the current page if the form is not saved, user will be asked to save it by using a confirm messagebox and if user presses no button, then user will be allowed to navigate otherwise, system will first save the details and then navigate.

Edit - My page is a content page, I meant, this is using a master page.

0

2 答え

次の手順を実行します。

window.onbeforeunload = confirmExit;

ページの実行を停止/継続する機能を備えている。

 function confirmExit() {            
            var email= document.getElementById("email");
            if (email.value != "")
                return "You have attempted to leave this page.  If you have made any changes to the fields without clicking the Save button, your changes will be lost.  Are you sure you want to exit this page?";
 }
0
追加された
確認機能を使用するだけです。例えば if(confirm( "Leave Page?")){trueを返します。 } else {save();偽を返します。 }
追加された 著者 Adeel,
また、はいボタンをクリックしてこのページの保存イベントを呼び出すこともできます。それを行う方法を提案してください。
追加された 著者 Pankaj,
私は私の質問にもラインを追加しました。
追加された 著者 Pankaj,

私はこれを行う方法は、フォームを保存する選択肢をユーザーに与えるonbeforeunload javascriptイベントの火災を持っていることです。個人的には、データを保存しているフォームをポーリングして、完了しているwhistを返します。私はこれがSOの使用方法だと思います。

There is a pretty decent example over on Code Project that may help http://www.codeproject.com/KB/aspnet/AutoSaveFormData.aspx

編集:

saveメソッドだけを呼び出す場合は、[WebMethod]フィルタでマークし、XmlHttpRequestまたはjQueryの$ .postを使用して呼び出すことができます

0
追加された
返信いただきありがとうございます。私はそれを試し、すぐにあなたを更新するでしょう。ありがとう。
追加された 著者 Pankaj,