ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

当文本框更改时,如何将javascript事件处理程序绑定到Ajax Control Toolkit组合框

2019-07-24 03:33:16  阅读:356  来源: 互联网

标签:ajaxcontroltoolkit javascript jquery javascript-events combobox


我需要一个用于ASP.NET项目的组合框,所以我决定使用Ajax Control Toolkit组合框(http://www.asp.net/AJAX/AjaxControlToolkit/Samples/ComboBox/ComboBox.aspx).

我不想使用回发,因为我不想重新加载页面,但我需要知道文本框中的文本何时更改,以便我可以调用服务器来保留新的列表项.

我很好奇如何将onchange或onblur事件绑定到此组合框使用的输入框.

这是我的asp.net页面:

<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>

<cc1:ComboBox ID="PlantDropDown" runat="server" OnInit="PlantDropDown_Init" DropDownStyle="DropDown" 
             AutoCompleteMode="SuggestAppend" 
            ItemInsertLocation="OrdinalText" AutoPostBack="false">


                </cc1:ComboBox>

更新:我尝试使用该建议,我收到此错误:

$find("PlantDropDown") is null
[Break on this error] $find('PlantDropDown').add_propertyChanged(function(sender, e) {\r\n

我在javascript方面使用jQuery,顺便说一句,如果有帮助的话.

最后更新:
我得到了它的工作,感谢crescentfresh的帮助,最后我在我的.aspx文件中有这个:

    <input type="hidden" id="PlantDropDownID" value="<%= PlantDropDown.ClientID %>" />

这是在我的javascript文件中,因为我不在我的.aspx文件中推送javascript:

elem = document.getElementById('PlantDropDownID');
$find(elem.value).add_propertyChanged(function(sender, e) {
    if (e.get_propertyName() == 'selectedIndex') {
        var newValue = sender.get_textBoxControl().value;
    }
})

解决方法:

我相信你应该绑定到“propertyChanged”事件并检查“selectedIndex”属性的更改:

$find('PlantDropDown').add_propertyChanged(function(sender, e) {
    if (e.get_propertyName() == 'selectedIndex') {
        var newValue = sender.get_textBoxControl().value;

        // persist selected value here...
    }
})

与通常的警告约.NET control ids in the client.

api并不容易,这是肯定的.例如,没有.get_value()方法,这将是很好的,而不必通过嵌入的文本框控件.

编辑:

&GT $find(“PlantDropDown”)为空

确保使用正确的ID.请参阅.NET control ids in the client.要获得参考,您可能需要执行以下操作:

$find('<%= PlantDropDown.ClientID %>')

&GT我在javascript方面使用jQuery

这没有任何意义.

标签:ajaxcontroltoolkit,javascript,jquery,javascript-events,combobox
来源: https://codeday.me/bug/20190724/1519712.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有