0

レコードからページ上のコントロールに値を読み込んで書き込むasp.netページがあります。

別ページへのリンクと保存ボタンがあります。

ユーザーが保存をクリックすると、変更が保存され、どこにでも移動できます。

保存をクリックせずにリンクをクリックすると、すべての変更が失われます。

ユーザーがそのページを読み込んでいる間に保存がクリックされたかどうかを確認する方法はありますか?

-belowなどのリンクのOnClick Javascript関数の行に沿って考えていますが、クリックされた保存ボタンをテストする方法がわかりません-誰かが私を正しい方向に向けることができますか?

function handleHyperLinkClick(hyperlink) 
{ 
    confirm("You have not clicked save, any changes will be lost - click cancel then save  your changes or ok to continue");
 } 
4

5 に答える 5

0

次のようなASP.NETサーバーボタンを使用していると仮定します。

<asp:Button runat="server" id="someButtonId" Click="someClickHandler" Text="Continue" />

私があなたなら、jQueryを使用して、次のようにボタンのクリックイベントを動的にバインドします。

$(document).ready(function() {
   $("input[type=button][id$=someButtonId]").on("click", function(e) {
      if(!confirm("You have not clicked save, any changes will be lost - click cancel then save  your changes or ok to continue"))
      {
          e.preventDefault()
      }
   });
});

お役に立てれば。

于 2012-08-28T09:58:46.897 に答える
0

ボタンがクリックされたときに、変数に何らかの値をアタッチできます。次に、ユーザーがナビゲートしようとしたときに、その変数がその値を持っているかどうかを確認します。そうであれば、それはクリックされています。

button = document.getElementById("button");
button.onclick = function() { clicked = true; }
document.getElementById("link").onclick = function() { if (!clicked) { alert("Sure?"); }
于 2012-08-28T09:57:39.530 に答える
0

bool 変数を追加します。デフォルトは false で、ボタンがクリックされた場合は true に設定されます。次に、ユーザーがページを離れた場合の値を確認します。

于 2012-08-28T09:54:36.260 に答える
0

を使用して行うことができますhidden field。ユーザーが保存ボタンをクリックしてからhidden field値を設定すると。

于 2012-08-28T09:55:10.500 に答える
0

JavaScript のような状態で一時変数を保持する必要があります。

`

var state = 0;

 //your function calls here
function yourFunction()
{
//// your coding
 state =1;
//// your coding
}

` この場合、state=1 の場合は値を送信するか、他のページに移動する必要があります。そうでない場合はそうすべきではありません。このフラグは、リンクをクリックしている間 (関数を介してナビゲートしている場合)、またはページの onBeforeUnload イベントをチェックします。

あなたが何か他のものを探しているかどうかを教えてください。

于 2012-08-28T09:56:39.030 に答える