0

最初のクリック後にリンクを無効にする必要がある css クラスの thickbox を持つ href タグがありますどうすればこれを行うことができますか?

Aspx コード

<a href="SomePage.aspx?FDID=11&KeepThis=true&TB_iframe=true&height=150&width=400"
     onclick="return DoSomething(this)" class="thickbox" id="AnchorID">
<img id="MyImageButton" alt="Image" src="SiteImages/image.png" runat="server" />
</a>

私の JavaScript メソッド

function DoSomething(element) {

                return true;
            }
4

3 に答える 3

1

JavaScript では、要素に属性を設定できdisabled=""ます。(こちらをご覧ください)

無効にして、ブラウザーが URL にアクセスできないようにする場合は、呼び出す必要がありますevent.preventDefault()(こちらを参照) 。

于 2012-07-13T12:13:47.463 に答える
0

このためには、値の例 1 または 0 を格納する隠しフィールドを作成する必要があります。ユーザーが最初にリンクをクリックする場合は、隠しフィールドの値を 1 に設定し、ユーザーがリダイレクトできるようにしてから、ハイパーリンクを無効にします。ユーザーがハイパーリンクを再度クリックした場合は、最初に非表示フィールドに値 1 が含まれているかどうかを確認してから、リダイレクトを許可しないでください。私の要点を理解していただければ幸いです。また、javascript で href プロパティを設定します。

于 2012-07-13T12:30:26.213 に答える
0

OPが何をしようとしているのか正確にはわかりませんが、クリックした後にスクリプトを1回だけ実行できるようにするだけであれば、このようなことがうまくいきます...

function DoSomething(element) {
  if(element.getAttribute("block")==null){
    ...
    element.setAttribute("block","1");
    return true;
  }else{
    return false;
  }
}

disabledこれには、属性を設定してボタンのスタイルを変更しないという利点があります。

ただし、true関数から戻ってからリンクtrueOnClickハンドラーに戻ると、ブラウザーはhref... の URL に移動するため、2 回目の実行をブロックする必要がある理由がわかりません。(thickbox私が何も知らない が正常ではない方法で動作しない限り.)

于 2012-07-13T13:25:38.077 に答える