javascript
  • c#
  • html
  • asp.net
  • asp.net-4.0
  • 2016-04-19 4 views -2 likes 
    -2

    Ich habe ein DataList die wie folgt aussieht:Machen div Klicken Sie auf serverseitigen Code, der Informationen aus angeklickt div enthalten wird?

    <div> 
        <asp:DataList ID="DataListDiv" runat="server" RepeatColumns="5"> 
         <ItemTemplate> 
         <div style="padding: 8px"> 
          <div style='width:195px;height:162px; background-image:url(<%# Eval("image_path","Styles/Images/{0}") %>)'> 
           <div style="width: 195px; height: 22px;"> 
            <asp:Label ID="Label2" runat="server" Text='<%# Eval("CookName")%>'></asp:Label> 
           </div> 
           <div style="width: 195px; height: 22px;"> 
            <asp:Label ID="Label3" runat="server" Text='<%# Eval("WaiterName")%>' ></asp:Label> 
           </div> 
          </div> 
         </div> 
         </ItemTemplate> 
        </asp:DataList> 
    </div> 
    

    Das sieht gut aus. Aber jetzt muss ich in der Lage sein, auf die div klicken, so dass ein Ereignis auftritt (dh ein Klick) und serverseitigen Code aufgerufen wird. Alles ohne das Aussehen der div zu ändern. Im Wesentlichen klickt man innerhalb der div einen Event-Handler, und dieser Event-Handler würde die Information über das div haben, auf das ich geklickt habe.

    So zeigt zum Beispiel die datalist, dass man divCookName als Joe und WaiterName als Mark hat. Wenn dieser div geklickt wird, wird der serverseitige Code ausgeführt und ich werde an diesem Punkt die Joe & Mark sind die beiden Mitarbeiter aus diesem div.

    Ist das möglich? Ich habe gesucht, aber ich habe nichts gefunden, was helfen könnte.

    Jede Hilfe wird geschätzt.

    Danke.

    Antwort

    1
    <div onclick="yourjavascriptfunction"> 
    .... 
    </div> 
    

    Von dort benötigen Sie die JavaScript-Funktion, um den serverseitigen Code aufzurufen und die Antwort entsprechend zu behandeln.

    +0

    Aber würde ich wissen können, auf welches div ich geklickt habe? Können Sie ein Beispiel dafür geben, wie die Javascript-Funktion aussehen würde, die serverseitigen Code aufruft? Vielen Dank. – rbhat

    0

    Wenn Sie jQuery verwenden können, können Sie einen AJAX-Aufruf wie folgt machen:

    $("div").click(function() { 
        $.ajax({ 
         url: '/myserversidescript', 
         success: function(msg, status, xhr) { 
          //do something 
         }, 
         error: function() { 
         //do Something 
         } 
        }); 
    }); 
    

    Wenn Sie jQuery nicht verwenden möchten, können Sie es auch tun mit normalen JavaScript: AJAX call with JavaScript

    Verwandte Themen