Я не могу вызвать веб-сервис 2 раза из кода функции jQuery здесь.
Страница:
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script type="text/javascript">
function getCityByPinCode() {
var path = '<%=ConfigurationManager.AppSettings["AutoComplete"].ToString() %>';
$.ajax({
type: "POST",
url: "" + path + "/CityBasedOnPinCode",
data: "{pincode: '" + $("#<%=ntxbPostCode.ClientID%>").val() + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
error: OnError
});
}
function OnSuccess(data, status) {
var city = document.getElementById('<%= tbxCity.ClientID %>');
var val1 = data.d;
document.getElementById("ContentPlaceHolder1_CompanyDetails1_tbxCity").value = val1;
}
function OnError(request, status, error) {
alert(request.statusText);
}
</script>
</telerik:RadCodeBlock>
<body>
<telerik:RadNumericTextBox ID="ntxbPostCode" runat="server" DataType="System.Int32"
MaxLength="4" TabIndex="4" Width="95%" DecimalDigits="0" ClientEvents-OnValueChanged="getCityByPinCode()">
</telerik:RadNumericTextBox>
<asp:TextBox ID="tbxCity" runat="server" Width="95%" TabIndex="5"></asp:TextBox>
</body>
Веб-сервис:
public string CityBasedOnPinCode(string pincode)
{
int pcode = 0;
int.TryParse(pincode, out pcode);
List<usp_CityBasedOnPinCodeResult> lstCity = new CityDA().CityBasedOnPincode(pcode);
return lstCity[0].CityName.ToString();
}
Я хочучтобы заполнить текстовое поле города на основе введенного пин-кода. Так, когда пользователь вводит пин-код, он / она автоматически получает название города. Когда я устанавливаю значение пин-кода заранее, оно дает мне идеальный результат, но когда я ввожу новое значение, я получаю ошибку следующим образом
Ошибка времени выполнения Microsoft JScript: ожидается объект.
Обратите внимание, что если у меня есть значение пин-кода в текстовом поле во время загрузки страницы (время редактирования), тогда я получаю правильное значение,не получить значение после изменения значения текстового поля.JQuery включен в мастер-страницу.поэтому сюда не включается.