Member 11570261 Ответов: 3

Как получить выбранное значение при привязке элементов с помощью ajax


Привет ,

Я связываю элементы dropdownlist из базы данных с помощью jQuery ajax (). но проблема в том, что я не могу получить доступ к выбранному значению dropdownlist в событии buttonClick в коде позади.

Может ли кто-нибудь помочь мне, как получить выбранное значение, когда listitems привязан к$. ajax()

пожалуйста, найдите код:
.aspx apge

<script type="text/javascript">
$(document).ready(function() {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/BindDatatoDropdown",
data: "{}",
dataType: "json",
success: function(data) {
$.each(data.d, function(key, value) {
$("#ddlCountry").append($("<option></option>").val(value.CountryId).html(value.CountryName));
});
},
error: function(result) {
alert("Error");
}
});
});
</script>

What I have tried:

I tried to get value from 

protected void btnSubmit_Click(object sender, EventArgs e)
        {
string val = ddlCountry.SelectedItem.Value;// here getting empty value
}

3 Ответов

Рейтинг:
24

Karthik_Mahalingam

Вы должны использовать Hidden Field для хранения выбранное значение в javascript и вы можете прочитать то же самое в коде позади, это должно сработать.


Member 11570261

Благодарный вам.

Karthik_Mahalingam

добро пожаловать

Рейтинг:
12

F-ES Sitecore

asp.net он не знает ни о каких изменениях, которые вы вносите в серверные элементы управления с помощью javascript, поэтому не может видеть ваши новые элементы. Если вы манипулируете выпадающим списком с помощью ajax, то не используйте ASP:DropDownList, вместо этого просто используйте обычный html & lt;select & gt; like

<select name="ddlCountry" id="ddlCountry">
<option value="UK">United Kingdom</option>
</select>


затем в вашем событии щелчка Вы читаете значение с помощью

string country = Request.Form["ddlCountry"];


Member 11570261

Спасибо, теперь все работает нормально.

Рейтинг:
1

Member 10398773

использовать

  $("#ddlcountry")
            .change(function () {

               

                var countryid= $(this).val();

}