Ich habe einen Repeater:Wie Daten zu übergeben in Artikel Repeater Onclick-Taste, um JavaScript-Datei zur Verwendung in Ajax
<div class="container" id="TourDetail">
<asp:Repeater ID="RptTourDetail" runat="server" DataSourceID="ODSTTitle" ItemType="Tour"
EnableViewState="false" OnItemDataBound="RptTourDetail_ItemDataBound">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li>
<span class="ForGenHandle">
<%# Item.TourId %>
</span>
<div id="tright">
<input runat="server" type="button" name="name" value="INQUIRE" class="Inq" id="InqBtn" />
</div>
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
</div>
Dass es meinen Repository verwendet, um Daten zu zeigen. Ich habe eine Schaltfläche in diesem Repeater:
<input runat="server" type="button" name="name" value="INQUIRE" class="Inq" id="InqBtn" />
Onclick auf dieser Schaltfläche öffnet eine Schachtel mit einigen Daten der einzelnen Elemente im Repeater.
ich verwendet Ajax, es zu tun. Hier ist mein Allgemein Handler:
public void ProcessRequest (HttpContext context) {
int x = Convert.ToInt32(context.Request.QueryString["TourID"]);
context.Response.ContentType = "application/json";
context.Response.Write(JsonConvert.SerializeObject(new ATourDateRep().GetById(x)));
}
und hier ist mein Javascript-Codes:
$('.Inq').click(function() {
$.ajax({
url: '../Services/TourDates.ashx?TourID=<%%>',
success: function (e) {
for (var i = 0; i < e.length; i++) {
$('<li />').html("<div>" +
e[i].TourStartDate + "</div>" + "<div>300$</div>" + " <div>500$</div>").appendTo('#list');
}
}
});
}
);
Hat jemand wissen, wie TourId jedes Element des Repeaters in generische Handler als Query-String zu übergeben? In dieser Linie meine ich:
url: '../Services/TourDates.ashx?TourID=<%%>'
Hier mein Repository ist, wenn nötig:
public class ATourDateRep
{
private DatabaseEntities model = new DatabaseEntities();
public List<TourDate> GetById(int Id)
{
return model.TourDates.Where(e => e.TourId == Id).ToList();
}
}
ja danke es hat das selbe problem der anderen antwort aber es ist jetzt gelöst. Wirklich danke dir. Ich weiß nicht, welchen. Beide waren hilfreich. Danke –
Kein Problem. Im Allgemeinen gehe ich für die erste Antwort in einer solchen Situation. Vielen Dank. – vijayP
danke 1000000 mal –