禁用 AjaxToolkit CascadingDropDown 后,无法在客户端获取它
Cannot get an AjaxToolkit CascadingDropDown on client side after disabling it
我有一个CascadingDropDown,我不想在PageLoad上运行,但会在下拉列表更改后运行。为了实现这一点,我在页面加载事件中禁用了它,然后才有机会运行。然后,当 ddl 更改时,我将使用 jquery 来启用 CascadingDropDown。我遇到的问题是jquery在禁用CascadingDropDown后找不到它。有谁知道我如何掌握它,或者另一种方法?
这是我的级联下拉列表:
<ajaxToolkit:CascadingDropDown id="ajaxccd_ddlFoo" runat="server"
TargetControlid="ddlFoo" ParentControlid="ddlBar" PromptText="-- Select --"
Category="Foo" ServicePath="~/AJAXWebServices/CascadingDropDownPopulator.asmx"
ServiceMethod="Populate_ddlFoo" />
我在 VB.net 页面加载事件中禁用它的代码:
ajaxccd_ddlTPA.Enabled = False
这是我尝试掌握对象客户端的地方:
$(".ddlBarCls").click(function () {
var ajaxccd_ddlFooID = document.getElementById('ajaxccd_ddlFooID').value;
var ajaxccd_ddlFoo = $find(ajaxccd_ddlFooID);
});
问题是ajaxccd_ddlFoo总是什么也没返回。我已经确认,当ajaxccd_ddlTPA未禁用服务器端时,jquery将毫不费力地找到它。
任何帮助将不胜感激!
ajaxccd_ddlTPA.Enabled = False
当您禁用控件服务器端(见上文(时,实际发生的是 asp.net 框架不会将控件呈现给浏览器。这就是你的jquery找不到控件的原因,因为浏览器中不存在该控件。
如果需要在浏览器中操作控件,则需要禁用它,以使框架仍将其呈现给浏览器。
一种方法是呈现启用的控件,但随后在浏览器的页面加载事件上使用 javascript 来禁用它。
例
将此代码添加到主页(*.aspx(的头部版块。此代码在页面加载事件上执行。
<script type="text/javascript">
function pageLoad(sender, args) {
$find("myFoo").add_populated(onPopulated);
}
function onPopulated() {
$get("ddlFoo").disabled = true;
}
</script>
并在 CascadingDropDown 控件上添加必要的 BehaviorID
属性
<ajaxToolkit:CascadingDropDown id="ajaxccd_ddlFoo"
runat="server"
TargetControlid="ddlFoo"
ParentControlid="ddlBar"
BehaviorID="myFoo"
PromptText="-- Select --"
Category="Foo"
ServicePath="~/AJAXWebServices/CascadingDropDownPopulator.asmx"
ServiceMethod="Populate_ddlFoo" />
相关文章:
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- Java/Javascript-从客户端获取ip
- 如何从Url客户端获取Id
- 分析JS代码以在客户端获取cookie
- 是否可以使用googleanalystics.js在客户端获取推荐数据
- 服务器无法从客户端获取消息
- 从流星服务器到客户端获取单个值
- 如何通过客户端获取用户控件属性
- 如何使用 javascript 从客户端获取 C# 时区信息类的客户端时区 ID
- 如何在不使用 JavaScript 中的 activex 的情况下从客户端获取文件大小
- 从客户端获取代码隐藏中的输入文本框值
- 如何使用Javascript或在客户端获取设备(iOS,Android)CPU和内存
- 如何在客户端获取服务器删除/更新收集项的 ID
- 如何使用php从客户端获取套接字的headers请求
- 如何通过NRQL查询使用JavaScriptAjax调用在客户端获取/提取NewRelicInsights数据
- Telerik ASP.NET AJAX:如何在客户端获取数据绑定列的值
- 禁用 AjaxToolkit CascadingDropDown 后,无法在客户端获取它
- 在文件上传请求后在客户端获取响应
- 从服务器到客户端获取数据而无需刷新页面
- 从外部URL客户端获取数据