gpt4 book ai didi

jQuery Ajax 调用 Web 方法?

转载 作者:行者123 更新时间:2023-12-01 01:45:59 29 4
gpt4 key购买 nike

我正在调用 webmethod 来填充选择标签。成功返回但不填充选择选项

这是我的电话

function getCities(country2) {
$.ajax({
type: 'POST',
url: 'getCities.aspx/getCitiesArray',
contentType: 'application/json; charset=utf-8',
dataType: "json",
data: "{countryName:'" + (country2) + "'}",
success: function (msg) {
alert(msg);
$("#city").empty().append($("<option></option>").val("[-]").html("select city"));
$("#city").append($("<option></option>").val("Other").html("Not in the List"));
var htm = "";
$.each(msg.d, function () {
$("#city").append($("<option></option>").val(this['Value']).html(this['Text']));
});
},
error: function () {
alert("Ajax Error");
}
});
<小时/><小时/>

以及 Visual studio 2005.ASP.NET 2.0 中的 webmethod

[WebMethod]
public static ArrayList getCitiesArray(string countryName)
{
ArrayList emptyArrayList = new ArrayList();
string sql = "select ISNULL(CityName,'-') as CityName, ISNULL(CityCode,1) as CityCode from ListCities where CountryID = (select ISNULL(CountryID,0) from ListCountries where CountryName = '" + countryName + "')";
DataTable dtCities = new DataTable();
dtCities = DBUtils.GetDataTable(sql);
ArrayList lstArrCities = new ArrayList();
if ((dtCities != null) && (dtCities.Rows.Count > 0))
{
for (int i = 0; i < dtCities.Rows.Count; i++)
{
lstArrCities.Add(new ListItem(dtCities.Rows[i]["CityName"].ToString(), dtCities.Rows[i]["CityCode"].ToString()));
}
return lstArrCities;
}
return emptyArrayList;
}

最佳答案

我建议您多花一些时间调试代码以找到问题的根源。 N首先将问题原因归结为客户端或服务器。例如:

  1. 从 AJAX 调用返回时 msg 的值是多少?如果它是 NULL 或其他意外情况,请停止查看客户端并在重新攻击前端之前深入研究服务器端代码。
  2. 当您在应用程序外部运行 SELECT SQL 时,它会返回什么?如果它没有返回任何数据,您需要更深入地研究数据库并在数据方面进行工作。

根据您粘贴的代码很难确定问题的答案 - 尤其是在没有数据的情况下。

将其分解为各个组成部分,然后才继续构建。祝你好运。

关于jQuery Ajax 调用 Web 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24137986/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com