JQuery Cascade 插件下拉列表不刷新

2024-04-19

我正在使用基于 JQuery 的级联插件 https://web.archive.org/web/20111206072619/http://plugins.jquery.com:80/project/cascade;可能它有效,但我发现它有很多问题。

也许有人已经遇到过这个插件,也许可以提供帮助。

所以,我使用这个插件进行位置过滤

http://clip2net.com/clip/m12007/1246819525-clip-2kb.png http://clip2net.com/clip/m12007/1246819525-clip-2kb.png(破碎的图像)

这是我的CS代码:

public JsonResult getChildren(string val)
    {
        if (val.IsNotNull())
        {
            int lId = val.ToInt();
            Cookie.Location = val.ToInt();
            var forJSON = from h in Location.SubLocationsLoaded(val.ToInt())
                          select new { When = val, Id = h.Id, Name = h.Name, LocationName = h.LocationType.Name };
            return this.Json(forJSON.ToArray());
        }
        else
            return null;
    }

这是我的 JS 代码:

<script type="text/javascript">
function commonMatch(selectedValue) {
    $("#selectedLocation").val(selectedValue);
    return this.When == selectedValue;
};
function commonTemplate(item) {
    return "<option value='" + item.Id + "'>" + item.Name + "</option>";
};


$(document).ready(function() {
    $("#chained_child").cascade("#Countries", {
        ajax: {
            url: '/locations/getChildren'
        },
        template: commonTemplate,
        match: commonMatch
    }).bind("loaded.cascade", function(e, target) {
        $(this).prepend("<option value='empty' selected='true'>------[%Select] Län------</option>");
        $(this).find("option:first")[0].selected = true;
    });
    $("#chained_sub_child").cascade("#chained_child", {
        ajax: {
            url: '/locations/getChildren'
        },
        template: commonTemplate,
        match: commonMatch
    }).bind("loaded.cascade", function(e, target) {
        $(this).prepend("<option value='empty' selected='true'>------[%Select] Kommun------</option>");
        $(this).find("option:first")[0].selected = true;
    });
    $("#chained_sub_sub_child").cascade("#chained_sub_child", {
        ajax: {
            url: '/locations/getChildren'
        },
        template: commonTemplate,
        match: commonMatch
    }).bind("loaded.cascade", function(e, target) {
        $(this).prepend("<option value='empty' selected='true'>------[%Select] Stad------</option>");
        $(this).find("option:first")[0].selected = true;

    });

});

我向 jquery.cascade.ext.js 添加了一个条件

if (opt.getParentValue(parent) != "empty")
            $.ajax(_ajax);

To prevent Ajax request without selected value, but I faced with problem, when I reset selection in first box 3d box and below does not refresh: WTF?

第二期: 我想知道在哪里注入我自己的函数的最佳位置,该函数可以做一些事情,有一个要求 - 我需要知道所有盒子都完成了工作。


原始插件代码的问题是它在操作下拉列表后不会触发更改事件。

另外,我喜欢从“依赖”而不是“级联”的角度来思考这个问题。我尝试创建一个简单的插件和一个演示页面,以显示整个事情是如何工作的。

Demo: http://jsbin.com/unope http://jsbin.com/unope

Code: http://jsbin.com/unope/edit http://jsbin.com/unope/edit

让我解释一下我做了什么。我创建了名为“dependent”的插件,它可以让您关联下拉列表的依赖关系。

e.g.

$('#dropDown2').dependent({ 
                            dependency : 'dropDown1',
                            values : getValues
                        });

上面的代码表明 dropDown2 依赖于 dropDown1,因此每当 dropDown1 值发生变化时,它都会调用您的 getValues 函数(将其传递给 dropDown1)。您应该从 getValues 函数返回相关值,它会将它们填充到 dropDown2 中。

请记住,这段代码不是通用的,我很快就编写了它来演示这个概念。您必须进一步调整它才能达到您想要的结果。

如果您有任何疑问,请告诉我。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JQuery Cascade 插件下拉列表不刷新 的相关文章

  • 会话过期时将部分视图重定向到登录页面

    是否有一种简单的方法可以在会话过期后将整个页面 而不仅仅是部分视图 重定向到登录页面 我已尝试以下解决方案 但无法使其工作 Net MVC Partial View 会话过期时加载登录页面 https stackoverflow com q
  • jquery-ui 1.9.1 ui-draggable 不适用于 ie9 和 ie10

    我在 IE 9 和 10 中无法使 draggable 工作 主要使用的 javascript 包有 jquery ui 1 9 1 min js 和 jquery 1 8 2 min js 代码基本上是这样的 creation texts
  • jQuery 的 ondragstart 事件

    我一直在尝试使用 Javascript 拖放 API var file document getElementById file file addEventListener dragstart function evt evt dataTr
  • wp_unregister 和 wp_enqueue

    有人建议我使用 wp unregister 和 wp enqueue 将 wordpress jquery 库替换为 google 托管的库 因为 wordpress 有一些问题 然而 当我尝试将这些插入我的 WordPress 网站时 它
  • 如何使用 jquery ajax 将锚点的值发送到 php

    我正在尝试使用 jquery 将几个锚点的值发送到 php 文件 但我没有从 php 脚本中得到回调 div class result div a href value class star Star 5 a a href value cl
  • WordPress 插件滑块革命错误

    我无法摆脱以下错误 我激活插件后出现错误 Slider Revolution error could not unzip into the revslider public assets folder please make sure th
  • MVC3 中的“方法‘LabelFor’没有重载需要 2 个参数”

    我正在运行 ASP NET MVC 3 并且正在查看模型的编辑视图 我有一个FullName我想呈现为 全名 的属性 这是有问题的行 div class display label div 现在智能感知shows存在重载 有两个签名 第一个
  • 仅在第一次访问页面时显示 jQuery 弹出窗口

    我是新来的jQuery http en wikipedia org wiki JQuery 我的网站上有一些需求 我想仅在用户到来时才第一次显示 jQuery div 弹出窗口 无需一次又一次地展示 我仍然在使用这个 但我不知道第二次如何隐
  • 文件上传后如何隐藏上传按钮?

    我使用 blueimp 和 jquery UI 进行文件上传 我想在上传文件后隐藏此按钮 并在照片被删除时再次显示它 我该怎么做呢 这是我的 HTML
  • 如果元素隐藏则忽略 .NET 验证器(显示:无)

    我们经常在使用 javascript css 隐藏的元素 即 display none 上使用 NET 验证器时遇到问题 例如 可能有语法错误 但不用担心
  • 在jqGrid中查找当前页码

    如何在 jqGrid 中找到当前页码 当然使用 jQuery 另外我怎么知道总共有多少页 这应该可以做到 sp 1 text total pages ui pg input val current page Edit 我发现了一个更好的方法
  • 如何在文档加载时立即进行 AJAX 调用

    我想在加载文档后立即执行 ajax 调用 我正在做的是加载一个字符串 其中包含我将用于自动完成功能的数据 这就是我所做的 但它没有调用servlet 我删除了对各种 JS 脚本的调用 以使其更清晰 我在代码中做了几个类似的 AJAX 调用
  • 重命名 ASP.NET MVC 项目时出错

    我复制了以前的项目并将其重命名 一旦我成功重命名了所有名称空间并且它构建正确 当我运行该应用程序时 出现以下错误 The following errors occurred while attempting to load the app
  • 有没有模拟 Facebook 游览的 jQuery 插件?

    我指的是 Facebook 游览 可能使用开箱即用的 Facebook CSS 我已经知道这两个 http tympanus net codrops 2010 12 21 website tour http tympanus net cod
  • 用数组反向查找对象

    假设我有一个这样的对象 resourceMap a 0 1 2 3 4 5 6 7 8 9 10 b 11 12 c 21 23 d 54 55 56 57 510 确定是否的最佳方法是什么resourceId 21将会 c 我们不知道钥匙
  • Jquery,清除/清空 tbody 元素的所有内容?

    我认为这会相当简单 但似乎空方法无法清除我拥有的 tbody 如果有人知道执行此操作的正确方法 我将不胜感激 我只想删除 tbody 中包含的所有内容 到目前为止我正在尝试 tbodyid empty HTML table tbody tr
  • Fancybox 画廊组

    我正在使用 fancyboxhttp fancyapps com fancybox http fancyapps com fancybox 我的问题是 我可以将不同的资源组合在一起吗 我的意思是同一画廊 或 组 中带有内嵌或视频的图像 如果
  • 有没有非常轻的灯箱? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 运行测试项目时自动启动ASP.MVC项目

    我正在尝试为我的 ASP 网站设置一个测试项目 对于某些测试 我想使用 selenium 来执行端到端测试 因此 我的网站必须运行 以便测试可以访问该网站 运行测试时如何启动我的网站项目 请参考以下链接 我相信这是可能的 但会有点棘手 这些
  • jQuery:动态添加 DOM 元素时尝试将函数挂钩到 onclick,但它立即执行该函数

    我正在使用 jQuery 动态 我的意思是在运行时 向页面的 DOM 添加一个 span 元素 create add task button document createElement span attr id activityNameH

随机推荐

  • 如何继承 ASP.NET MVC 控制器并仅更改视图?

    我有一个从基本控制器继承的控制器 我想知道如何利用基本控制器的所有逻辑 但返回与基本控制器使用的不同的视图 基本控制器填充模型对象并将该模型对象传递到其视图 但我不确定如何在子控制器中访问该模型对象 以便将其传递到子控制器的视图 有几点 如
  • 这种基于 Flexbox 的布局是否需要额外的标记?

    我现在开始使用 Flexbox 尝试了解如何从使用传统 CSS 网格过渡 我有两种布局 一种是用 CSS 网格制作的 另一种是使用 Flexbox 制作的 这两个示例的基本布局都非常基本 页眉 导航 内容部分和页脚 从设计角度来看 它们看起
  • Rails 5.1.1 弃用警告已更改_属性

    我刚刚从 Rails 5 0 0 升级到 5 1 1 并开始收到大量弃用警告 如下所示 弃用警告 的行为changed attributes代替 after 回调将在下一版本的 Rails 中发生变化 新的 返回值将反映之后调用该方法的行为
  • 阻止 UIScrollView 的子视图调整大小?

    我有一个UIScrollView 具有由返回的视图的多个级别的子视图viewForZoomingInScrollView 在缩放期间 我希望其中一些子视图调整大小 而其他子视图不调整大小 无论我尝试什么 所有子视图都会调整大小 在子视图的超
  • 查询 mongodb 返回今天创建的文档

    我如何编写今天创建的结果文档的过滤器 我知道 ObjectId 有时间戳 我试过这个 db doc find id gte ObjectId getTimestamp getTime 我可以写吗 db doc find id getTime
  • Qml中的QScrollArea:Flickable + QQuickPaintedItem

    我正在尝试实现类似的东西QScrollArea 在小部件世界中 在 Qml 的帮助下 我决定一探究竟Flickable plus QQuickPaintedItem基于项目 在我的例子中名为抽屉 Flickable onContentXCh
  • Rails:backbone-on-rails gem-

    尝试按照 Ryan Bates Backbone js 教程构建抽奖应用程序 但我已经遇到了第一部分代码的问题 在 application js 的 init 函数中 他初始化了 Raffler 路线的新实例 该实例应该触发警报 主页 但我
  • 如何从Java中的Apple公钥JSON响应中获取公钥?

    我们正在尝试在 iOS 应用程序中添加 使用 Apple 登录 当客户端工作正常时 我们的后端是用 Java 编写的 我们无法解码 Apple 的公钥 当您点击网址时https appleid apple com auth keys htt
  • 无法登录 Magento 管理员

    我在登录我们的一个临时站点上的 Magento 管理面板时遇到问题 它在我们的 webdev 服务器上 100 工作 不久前在临时服务器上也工作得很好 我做了一些研究 大多数人认为这与在本地主机上运行 Magento 以及浏览器不为域名中没
  • Lucene:如何在单个字段下索引和搜索多个值

    如何在单个字段下索引和搜索多个值 例如说我有一个领域处理器这可能有i3 i5 i7 or i3 or i3 i5价值观 现在想象一下笔记本电脑的数据如下 data1 name laptop name price laptop price p
  • 接受任意切片的 Express 函数

    我想表达一个可以取任何切片的函数 我想我可以这样做 func myFunc list interface for i range list some other fun i where some other fun 本身需要一个interf
  • 如何将 GMP C 参数约定转换为更自然的东西?

    例如 我想做这样的事情 include
  • 如何使用“prototype”函数正确编写 JavaScript 属性和方法?

    我正在尝试学习如何使用 javascript 原型创建和使用 javascript 属性和方法 但遇到了一些困难 在下面的代码中 我尝试创建一个名为 radius 的简单对象 其半径为 4 并具有一个名为 getCircumference
  • 如果 cookie 未发送到服务器,则可以安全地将访问令牌存储在客户端 cookie 中

    我正在开发一个主干应用程序 其中包含 Laravel 后端的 REST api 这意味着我使用从社交媒体 例如 Facebook Google 等 收到的访问令牌对每个请求进行身份验证 我的计划是存储用 Javascript 生成的客户端
  • Node.js 或 Erlang

    当谈到它们可以处理的并发级别时 我真的很喜欢这些工具 Erlang OTP 看起来是更稳定的解决方案 但需要更多的学习和深入研究函数式语言范例 看起来 Erlang OTP 在多核 CPU 方面做得更好 如果我错了 请纠正我 但我应该选择哪
  • 在 Xcode 4 中本地化 iPhone 应用程序名称

    当我选择 Info plist 文件以便本地化应用程序名称并尝试构建项目时 构建失败并显示错误 提示找不到 Info plist 文件 如果我将 Info plist 文件路径更改为PROJECTNAME en lproj Info pli
  • 如何在 ASP.net MVC 中正确执行异步方法?

    如何从控制器方法内执行异步方法并返回 HttpStatusCodeResult 200 而异步委托不会提前终止其执行 我正在开发一个 asp net 应用程序 我的家庭控制器的一个操作需要很长时间才能运行 10 30 秒 我想返回 Http
  • 求给定数组的每个 (n-1) 个子集的乘积

    很抱歉删除了原来的问题 这里是 我们有一个包含 n 个整数的包或数组 我们需要找到每个 n 1 个子集的乘积 例如 S 1 0 3 6 ps 1 0 3 6 0 ps 2 1 3 6 18 ETC 经过讨论 我们需要处理三种情况 如下所示
  • 交换 javascript 数组中的两个项目[重复]

    这个问题在这里已经有答案了 可能的重复 Javascript 交换数组元素 https stackoverflow com questions 872310 javascript swap array elements 我有一个像这样的数组
  • JQuery Cascade 插件下拉列表不刷新

    我正在使用基于 JQuery 的级联插件 https web archive org web 20111206072619 http plugins jquery com 80 project cascade 可能它有效 但我发现它有很多问