2

ボタンクリックイベントを使用してアンカータグを無効にする必要があります。要件に合わせて、サーバー側とクライアント側の両方のイベントを処理しました。クライアント側のクリック イベントの 'href' 属性を次のように変更しました。

[ASPX]

 <asp:Button ID="Button1" runat="server" Text="Disable" OnClick="disable"  CausesValidation="false" OnClientClick="disable();"  />

[脚本]

     function disable() {
        $('a.ClassName').attr("href", "#")
    }

きちんとセットされます。ただし、サーバー側のプロセスの後、アンカー タグは古い href 属性で再び設定されます。これを解決するには?

4

2 に答える 2

2

サーバーにポストバックすると、新しいページがレンダリングされます。

JavaScript で行った変更はすべて失われます。

サーバー側で状態(ボタンが先に押されている)を検出し、URLサーバー側にも必要な変更を加える必要があります。

この状態の変化を非表示の入力に保存して、サーバー側で取得できます。

于 2013-01-23T09:37:21.783 に答える
0

を使用してページがロードされたらすぐにリンクを無効にする必要があります。

preventDefault();

だから、このようなことをしてみてください、

function disable_link(event) {

    event.preventDefault();
    return false;
}

代わりに、必要な特定の要素にバインドするだけです

于 2013-01-23T09:41:46.673 に答える