首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ajaxToolkit:CascadingDropDown获得错误

ajaxToolkit:CascadingDropDown获得错误
EN

Stack Overflow用户
提问于 2015-06-17 08:32:50
回答 1查看 827关注 0票数 0

我想使用ajaxtoolkit创建级联下拉列表,但是有错误。

因为新版本的ajaxcontroltoolkit工具箱已经删除了ToolkitScriptManager,所以我使用了脚本管理器。

代码语言:javascript
复制
<ajaxToolkit:CascadingDropDown 
    ID="cdlOffice" 
    TargetControlID="DropDownList1" 
    PromptText="Select Office" 
    PromptValue="" 
    ServicePath="~/WebService1.asmx" 
    ServiceMethod="GetLocation" 
    runat="server" 
    Category="LocationId" 
    LoadingText="Loading..." />

<div class="form-group">
                            <asp:Label runat="server" AssociatedControlID="DropDownList1" CssClass="col-md-2 control-label">Location</asp:Label>
                            <div class="col-md-10">
                                <asp:DropDownList id="DropDownList1" runat="server" class="select2-me" data-placeholder="--SELECT--" data-rule-required="true" style="width:250px;" />
                            </div>
                        </div>

和WebService1.asmx如下所示

代码语言:javascript
复制
  [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class WebService1 : System.Web.Services.WebService
    {

        [WebMethod]
        public CascadingDropDownNameValue[] GetLocation(string knownCategoryValues)
        {
            string query = "SELECT DISTINCT ITOFF_NAME, ITOFF_ID FROM ITOFF_TBL ORDER BY ITOFF_NAME";
            List<CascadingDropDownNameValue> Location = GetData(query);
            return Location.ToArray();
        }

        [WebMethod]
        public CascadingDropDownNameValue[] GetFloor(string knownCategoryValues)
        {
            string Location = CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues)["LocationId"];
            string query = string.Format("SELECT ITOFF_LEVEL, ITOFF_ID FROM ITOFF_TBL WHERE ITOFF_NAME = {0}", Location);
            List<CascadingDropDownNameValue> Floor = GetData(query);
            return Floor.ToArray();
        }

        private List<CascadingDropDownNameValue> GetData(string query)
        {
            string conString = ConfigurationManager.ConnectionStrings["ITFORMConnectionString"].ConnectionString;
            SqlCommand cmd = new SqlCommand(query);
            List<CascadingDropDownNameValue> values = new List<CascadingDropDownNameValue>();
            using (SqlConnection con = new SqlConnection(conString))
            {
                con.Open();
                cmd.Connection = con;
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        values.Add(new CascadingDropDownNameValue
                        {
                            name = reader[0].ToString(),
                            value = reader[1].ToString()
                        });
                    }
                    reader.Close();
                    con.Close();
                    return values;
                }
            }
        }

    }

我在显示错误

http://localhost:60461/Scripts/WebForms/MsAjax/MicrosoftAjax.js中第97862列第6行的未处理异常 0x800a138f - JavaScript运行时错误:无法获得未定义或空引用的属性“webServiceFailedNoMsg”

我从谷歌上学到的所有代码。有没有遗漏什么或做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-30 23:20:56

尝试将字符串Param 'knownCategoryValues‘从您的getLocation() web方法定义中删除:

代码语言:javascript
复制
 [WebMethod]
            public CascadingDropDownNameValue[] GetLocation()
            {
                string query = "SELECT DISTINCT ITOFF_NAME, ITOFF_ID FROM ITOFF_TBL ORDER BY ITOFF_NAME";
                List<CascadingDropDownNameValue> Location = GetData(query);
                return Location.ToArray();
            }

并从级联locationID定义中删除DropDown属性。

或者,如果要从另一个下拉列表中获取locationID,那么将其放在其中并将其定义为ParentControlID。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30886279

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档