Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用AjaxToolkit CascadingDropDown后,无法在客户端获取它_Javascript_Jquery_Vb.net_Cascadingdropdown - Fatal编程技术网

Javascript 禁用AjaxToolkit CascadingDropDown后,无法在客户端获取它

Javascript 禁用AjaxToolkit CascadingDropDown后,无法在客户端获取它,javascript,jquery,vb.net,cascadingdropdown,Javascript,Jquery,Vb.net,Cascadingdropdown,我有一个CascadingDropDown,我不想在PageLoad上运行,但会在下拉列表更改后运行。为了实现这一点,我在页面加载事件中禁用了it服务器端,然后它才有机会运行。然后,当ddl被更改时,我将使用jquery来启用CascadingDropDown。我遇到的问题是,在禁用CascadingDropDown之后,jquery无法找到它。有人知道我怎样才能掌握它吗,或者有别的方法吗 下面是我的级联下拉列表: <ajaxToolkit:CascadingDropDown id="aj

我有一个CascadingDropDown,我不想在PageLoad上运行,但会在下拉列表更改后运行。为了实现这一点,我在页面加载事件中禁用了it服务器端,然后它才有机会运行。然后,当ddl被更改时,我将使用jquery来启用CascadingDropDown。我遇到的问题是,在禁用CascadingDropDown之后,jquery无法找到它。有人知道我怎样才能掌握它吗,或者有别的方法吗

下面是我的级联下拉列表:

<ajaxToolkit:CascadingDropDown id="ajaxccd_ddlFoo" runat="server"
TargetControlid="ddlFoo" ParentControlid="ddlBar" PromptText="-- Select --"
Category="Foo" ServicePath="~/AJAXWebServices/CascadingDropDownPopulator.asmx" 
ServiceMethod="Populate_ddlFoo" />
下面是我尝试获取对象客户端的位置:

$(".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 framework不会将控件呈现给浏览器。这就是为什么jquery找不到该控件,因为该控件在浏览器中不存在

如果需要在浏览器中操纵控件,则需要以框架仍将其渲染到浏览器的方式禁用该控件

一种方法是启用控件,然后在浏览器的页面加载事件上使用javascript禁用它

示例

在页面(*.aspx)的标题部分添加此代码。此代码在页面加载事件时执行

<script type="text/javascript">
    function pageLoad(sender, args) {
        $find("myFoo").add_populated(onPopulated);
    }
    function onPopulated() {
        $get("ddlFoo").disabled = true;
    }
</script>
<script type="text/javascript">
    function pageLoad(sender, args) {
        $find("myFoo").add_populated(onPopulated);
    }
    function onPopulated() {
        $get("ddlFoo").disabled = true;
    }
</script>
<ajaxToolkit:CascadingDropDown id="ajaxccd_ddlFoo"
    runat="server"
    TargetControlid="ddlFoo"
    ParentControlid="ddlBar"
    BehaviorID="myFoo"
    PromptText="-- Select --"
    Category="Foo"
    ServicePath="~/AJAXWebServices/CascadingDropDownPopulator.asmx" 
    ServiceMethod="Populate_ddlFoo" />