Ich habe eine Liste der Kunden, die der Benutzer wählen kann. Wenn sie einen Kunden auswählen, muss ich die Kontakte dieses Kunden laden. Ich brauchte die Funktion von JavaScript zu rufen, damit ich eine Schaltfläche hinzugefügt:Call-Funktion von Code hinter in Javascript ohne Postback
<asp:Button ID="btnSample" runat="server" style="float:right;display:none" OnClick="btnSample_Click" />
und diesen Knopf dann von meinem JavaScript-Funktion ausgelöst wird:
function OnGetCustomer(result){
document.getElementById('lblCustID').innerHTML = result.ID;
document.getElementById('lblCustName').innerHTML = result.Name;
document.getElementById("btnSample").click();
}
-Code hinter die Kontakte zu laden:
protected void btnSample_Click(object sender, EventArgs e)
{
RateSheet r = new RateSheet(ID, Company.Current.CompanyID);
if (!string.IsNullOrEmpty(lblCustID.Text))
{
Customer c = new Customer(int.Parse(lblCustID.Text));
bool e2 = false;
foreach (Customer.CustomerContact cc in c.Contacts)
{
HtmlGenericControl li = new HtmlGenericControl("li");
CheckBox cb = new CheckBox();
cb.ID = "cbCustContact_" + cc.ID;
cb.Checked = true;
if (!string.IsNullOrEmpty(cc.Email))
{
cb.Text = cc.Email;
cb.TextAlign = TextAlign.Right;
li.Controls.Add(cb);
ulCustContacts.Controls.Add(li);
}
}
}
}
Ich brauche den Wert von lblCustID
, um die Kontakte des Kunden zu finden. Das Problem ist, dass der Button Postback verursacht und ich den Kunden verliere, den ich ausgewählt habe, so dass lblCustID
immer als Null zurückkommt. Wie stoppe ich Postback, damit ich keine Werte verliere?
Fügen Sie die Kunden-ID zu Hiddenfield hinzu, damit sie beim Postback auf dem Server veröffentlicht wird und Sie sie auf der Serverseite lesen können. – Esko
Klingt, als ob Sie eine Ajax-Anfrage benötigen – Jamiec