J'ai un contrôle dropdownlist asp.net. Il y a deux façons de le sélectionner. Le premier est à travers un bouton qui définit la valeur dans la liste déroulante via javascript.Le contrôle déroulant ASP.Net perd son état après avoir été défini dynamiquement via javascript
La seconde consiste à sélectionner manuellement l'option de liste déroulante.
Chacune de ces méthodes fonctionne par elle-même.
Si je fais le premier suivi de la seconde, puis appuyez sur Enregistrer - la valeur enregistrée est la valeur définie par le javascript. La sélection manuelle n'a eu aucun effet.
Est-ce que quelqu'un sait pourquoi c'est le cas?
EDIT:
Dans la section Head HTML:
<script>
function Select(allocationId) {
document.getElementById('Accounts').value=allocationId;
}
</script>
Dans le corps HTML:
<asp:DropDownList ID="Accounts" runat="server"></asp:DropDownList>
<button onclick="Select(<%#"'" + DataBinder.Eval(Container.DataItem, "Associated_AccountId") + "'"%>)" type="button">Select</button>
<asp:Button ID="btn_SaveAndClose" runat="server" Text="Save and Close" OnClick="btn_SaveAndClose_Click"></asp:Button>
Dans le code sous-jacent:
protected void btn_SaveAndClose_Click(object sender, System.EventArgs e)
{
int id = Convert.ToInt32(this.Accounts.SelectedValue);
}
EDIT:
Bizarrement - quand je l'utilise:
int id = Convert.ToInt32(Request.Form["Accounts"]);
cela fonctionne. Mais je ne sais pas pourquoi.
Pouvez-vous poster le code complet pour cela? – rahul
Comment s'appelle le Javascript? –
Inutile sans code! – womp