某某茶叶有限公司欢迎您!
金沙棋牌在线 > 服务器&运维 > JQuery异步加载无限下拉框级联功能实现示例

JQuery异步加载无限下拉框级联功能实现示例

时间:2019-12-29 06:38

复制代码 代码如下:

JQuery异步加载无限下拉框级联功能实现示例

 这篇文章主要介绍了JQuery异步加载无限下拉框级联功能的实现,需要的朋友可以参考下

代码如下:

<pre code_snippet_id="193059" snippet_file_name="blog_20140218_1_1038704" name="code" class="javascript">/* 

JQuery异步加载无限极下拉框级联功能 

zjy 

*/ 

(function ($) { 

$.ajaxSetup({ async: false }); 

var url = ""; 

var parameter = ""; 

$.fn.extend({ 

Load: function (urlPath) { 

url = urlPath.url; 

parameter = urlPath.parameter; 

$("#ddl1").append("<option value='0'selected='selected'>请选择</option>"); 

$.getJSON(url, parameter, function (data) { 

$.each(data.rows, function (i, row) { 

$("#ddl1").append($("<option></option>").val(row.id).html(row.text)); 

}); 

$("#ddl1").change(function () { $(this).Select($(this).val(), this); }); 

}); 

$(this).Selected(parameter.parentId, $("#ddl1")); 

}, 

 

Select: function (parentId, obj) { 

//debugger; 

if (parentId == "0") { 

return; 

parameter.parentId = parentId; 

$.getJSON(url, parameter, function (data) { 

$(obj).nextAll(".ddl").remove(); 

if (data != null) { 

$("<select>", { 

"class": "ddl", 

change: function () { 

$(this).Select($(this).val(), this); 

}).appendTo($("#cascade")); 

 

$($(".ddl")[$(".ddl").length - 1]).append("<option value='0' selected='selected'>请选择</option>"); 

$.each(data.rows, function (i, row) { 

$($(".ddl")[$(".ddl").length - 1]).append($("<option></option>").val(row.id).html(row.text)); 

}); 

}); 

$(this).Selected(parentId, $(obj).nextAll(".ddl")); 

}, 

 

Selected: function (parentId, obj) { 

$(this).GetValue(); 

//debugger; 

var selected = "0," + $("#loadselect").val(); 

$.each(selected.split(","), function (i, row) { 

if (row == parentId) { 

//debugger; 

$(obj).val(selected.split(",")[i + 1]); 

$(obj).change(); 

}); 

}, 

 

GetValue: function () { 

var ddlValue; 

var ddlCount = $(".ddl").length; 

for (var i = ddlCount - 1; i >= 0; i--) { 

if (i != 0) { 

if ($($(".ddl")[i]).val() != 0) { 

ddlValue = $($(".ddl")[i]).val(); 

break; 

} else { 

if ($($(".ddl")[i]).val() == 0) { 

ddlValue = 0; 

break; 

} else { 

ddlValue = $($(".ddl")[i]).val(); 

break; 

$("#selectvalue").val(ddlValue); 

}, 

}); 

})(jQuery); 

</pre><pre code_snippet_id="193059" snippet_file_name="blog_20140218_1_1038704" name="code" class="javascript"></pre><pre code_snippet_id="193059" snippet_金沙棋牌在线,file_name="blog_20140218_1_1038704" name="code" class="javascript"></pre><pre code_snippet_id="193059" snippet_file_name="blog_20140218_2_4146793" name="code" class="javascript"></pre><pre code_snippet_id="193059" snippet_file_name="blog_20140218_3_3034761" name="code" class="javascript">调用方法</pre><pre code_snippet_id="193059" snippet_file_name="blog_20140218_4_4987391" name="code" class="javascript"><pre code_snippet_id="193059" snippet_file_name="blog_20140218_4_4987391" name="code" class="javascript"><script type="text/javascript"> 

$(function () { 

$("#cascade").Load({ url: '@Url.Action("GetCountryArea")', parameter: { "parentId": 0, "random": Math.random() } }); 

}); 

</script></pre><br> 

<pre code_snippet_id="193059" snippet_file_name="blog_20140218_5_843717" name="code" class="html"><div id="cascade"> 

<select id="ddl1" class="ddl"></select> 

</div> 

<input id="loadselect" hidden="hidden" value="1,2"/> 

<input id="selectvalue" hidden="hidden" /></pre><br> 

<br> 

<pre></pre> 

<pre></pre> 

<pre></pre> 

<pre></pre> 

<pre></pre> 

<pre></pre> 

 

</pre> 

 

这篇文章主要介绍了JQuery异步加载无限下拉框级联功能的实现,需要的朋友可以参考下 代码如下...

easyui的下拉框动态加载数据,高校中要根据首先查询所有学院,然后根据学院动态加载课程。下面看如何实现。

/* JQuery异步加载无限极下拉框级联功能 zjy */  { $.ajaxSetup; var url = ""; var parameter = ""; $.fn.extend({ Load: function  { url = urlPath.url; parameter = urlPath.parameter; $.append("请选择"); $.getJSON(url, parameter, function  { $.each(data.rows, function .append($.val.html; $.change.Select; }); }); $.Selected(parameter.parentId, $; }, Select: function  { //debugger; if  { return; } parameter.parentId = parentId; $.getJSON(url, parameter, function .nextAll; if  { $("", { "class": "ddl", change: function .Select; } }).appendTo; $.length - 1]).append("请选择"); $.each(data.rows, function [$.append($.val.html; $.Selected.nextAll; }, Selected: function  { $; //debugger; var selected = "0," + $; $.each, function  { if  { //debugger; $.val[i + 1]); $; }, GetValue: function () { var ddlValue; var ddlCount = $.length; for (var i = ddlCount - 1; i >= 0; i--) { if  { if  != 0) { ddlValue = $; break; } } else { if  == 0) { ddlValue = 0; break; } else { ddlValue = $; break; } } } $.val; 

调用方法

 $ { $.Load({ url: '@Url.Action', parameter: { "parentId": 0, "random": Math.random; 
  1. html + js代码

    学院名称: 课程名称: