-1

リンク付きの2つのリストアイテムを使用しています。次に、クライアント側からクリックされたリンクを確認します。これが私のコードです:

  <ul id="navtabs">
            <li id="basic" runat="server" class="cat-item cat-item-6 current-cat"><a href="#">new</a></li>
            <li id="new" runat="server" class="cat-item cat-item-8"><a href="#">old</a></li>
        </ul>

ベーシックか新規か、クリックしたアイテムを確認したい

if(this.basic.clicked ==true)
{
   do something
}
else
{
  do something
}

これどうやってするの?

4

2 に答える 2

0

Web フォームを訴えている場合は、

  1. 訴訟を起こしているコントロールはサーバーコントロールでなければなりません
  2. それがリンクの場合、put runat="server" とコントロールの ID
  3. すべてのリンクのクリック イベントを作成します。

しかし、これらのリンクの目的は明確ではありません。
クリックに対してどのようなアクションを実行するかを明確にする必要があります。

于 2012-11-24T06:02:29.310 に答える
0

コツがあります。これは、jQuery、1 つの非表示フィールド、および 1 つの非表示の ASP ボタンを使用して行うことができます。

    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Hidden Button" />
    <asp:HiddenField ID="hdnLIClicked" runat="server" />

今jQuery部分、readyイベントで

    $().ready(function() {
        $("#Button1").hide();//hiding the button through jQuery

        $("#basic").click(function(){
            $("#hdnLIClicked").val("basic");
            $("#Button1").click();
        });
        $("#new").click(function(){
            $("#hdnLIClicked").val("new");
            $("#Button1").click();
        });
    });

または、両方のリスト項目に共通のクラスが既にあるように、リスト項目がさらにある場合は、すべてのリスト項目に共通のクラスを与えることができます。すなわち「猫アイテム」。

    $().ready(function() {
        $("#Button1").hide();//hiding the button through jQuery

        $(".cat-item").click(function(){
            $("#hdnLIClicked").val($(this).attr("id"));
            $("#Button1").click();//this will fire the hidden button event on server side.
        });
    });

そして、hiddenfield でクリックされた「li」が表示されます。

バックエンドでは、ボタン クリック イベントを次のように処理します。

    protected void Button1_Click(object sender, EventArgs e)
    {
        if (hdnLIClicked.Value == "basic")
        {
            //handle your logic for basic here...
        }
        else if (hdnLIClicked.Value == "new")
        {
            //handle your logic for new here...
        }
    }

jQuery を使用してボタンを非表示にするか、そのプロパティVisible="false"を設定しないでください。そうしないと、ボタンがクライアント側でレンダリングされません。

楽しみ ;)...

于 2012-11-24T06:42:23.153 に答える