求jQuery高手帮忙,我使用jQuery 二级联动,但是不知道怎么取Select里的值,帮忙解答下,代码~~~
代码如下:$(document).ready(function(){$("#sel1").change(function(){$("#sel1option").each(...
代码如下:
$(document).ready(function () {
$("#sel1").change(function () {
$("#sel1 option").each(function (i, o) {
if ($(this).attr("selected")) {
$(".sub").hide();
$(".sub").eq(i).show();
}
});
});
$("#sel1").change();
});
<select id="sel1" style="z-index:inherit" >
<option>北京</option>
<option>上海</option>
</select>
<select class="sub">
<option>北京</option>
<option>平谷</option>
</select>
<select class="sub">
<option>上海</option>
<option>嘉定</option>
</select>
联动显示倒是没有问题了,现在我要取到两个下拉框中选中的值,不知道怎么取啊,求JQ高手帮忙,谢谢啦! 展开
$(document).ready(function () {
$("#sel1").change(function () {
$("#sel1 option").each(function (i, o) {
if ($(this).attr("selected")) {
$(".sub").hide();
$(".sub").eq(i).show();
}
});
});
$("#sel1").change();
});
<select id="sel1" style="z-index:inherit" >
<option>北京</option>
<option>上海</option>
</select>
<select class="sub">
<option>北京</option>
<option>平谷</option>
</select>
<select class="sub">
<option>上海</option>
<option>嘉定</option>
</select>
联动显示倒是没有问题了,现在我要取到两个下拉框中选中的值,不知道怎么取啊,求JQ高手帮忙,谢谢啦! 展开
展开全部
楼上正解。
你的联动还有些问题的吧···
你的sub把 平谷 和 嘉定 放在一起多好,与#sel1对应起来更方便。
<select class="sub">
<option>平谷</option>
<option>嘉定</option>
</select>
然后根据#sel1的取值,显示对应的sub内容。
$(document).ready(function () {
$("#sel1").change(function () {
$("#sel1 option").each(function (i, o) {
if ($(this).attr("selected")) {
$(".sub").get(0).selectedIndex = i;
}
});
});
$("#sel1").change();
//取值很方便
$("#btn3").click(function(){
alert($("#sel1").val() + " " + $(".sub").val());
});
});
我说的意思是:假设你的第一级下拉列表与第二级下拉列表属于一一对应的关系的话,即选中第一级下拉列表的索引与第二级下拉列表的索引是相同的,而且内容是匹配的话,用我说的方法能够减少一些冗余。
你的意思是,把第二级的下拉列表中的值全部取出来显示的吧。
这样的话对于联动来说,在第二级下拉列表中又出现了第一级下拉列表的内容,产生内容重复。
希望我表达的,你能够看的明白。
还有给分哈,追问我,不在我这里留言?你真是一朵奇葩。
你的联动还有些问题的吧···
你的sub把 平谷 和 嘉定 放在一起多好,与#sel1对应起来更方便。
<select class="sub">
<option>平谷</option>
<option>嘉定</option>
</select>
然后根据#sel1的取值,显示对应的sub内容。
$(document).ready(function () {
$("#sel1").change(function () {
$("#sel1 option").each(function (i, o) {
if ($(this).attr("selected")) {
$(".sub").get(0).selectedIndex = i;
}
});
});
$("#sel1").change();
//取值很方便
$("#btn3").click(function(){
alert($("#sel1").val() + " " + $(".sub").val());
});
});
我说的意思是:假设你的第一级下拉列表与第二级下拉列表属于一一对应的关系的话,即选中第一级下拉列表的索引与第二级下拉列表的索引是相同的,而且内容是匹配的话,用我说的方法能够减少一些冗余。
你的意思是,把第二级的下拉列表中的值全部取出来显示的吧。
这样的话对于联动来说,在第二级下拉列表中又出现了第一级下拉列表的内容,产生内容重复。
希望我表达的,你能够看的明白。
还有给分哈,追问我,不在我这里留言?你真是一朵奇葩。
2011-07-18
展开全部
大半夜的,我撑着眼睛给你写代码,一定要给分啊。
呵呵,获取很简单哦,在你的代码基础之上,增加代码:
<script type="text/javascript">
function view(){
var sel1 = $('#sel1').val();
var sel2 = '';
$('.sub').each(function(){
if( $(this).css('display') != 'none' ){
sel2 = $(this).val();
}
});
alert('sel1='+ sel1 + ';\nsel2='+ sel2);
}
</script>
<input type="button" value="获取他们的值" onClick="view();" />
---------------------------------------------------------
代码是最好的解释啊。。。。
对了,你用 jQuery 1.4 以上的 库啊,库太早会有很多错误。。。
如果你报错,那可能有别的错误,,
你应该用 Chrome 的自带调试工具查错。。。。
呵呵,获取很简单哦,在你的代码基础之上,增加代码:
<script type="text/javascript">
function view(){
var sel1 = $('#sel1').val();
var sel2 = '';
$('.sub').each(function(){
if( $(this).css('display') != 'none' ){
sel2 = $(this).val();
}
});
alert('sel1='+ sel1 + ';\nsel2='+ sel2);
}
</script>
<input type="button" value="获取他们的值" onClick="view();" />
---------------------------------------------------------
代码是最好的解释啊。。。。
对了,你用 jQuery 1.4 以上的 库啊,库太早会有很多错误。。。
如果你报错,那可能有别的错误,,
你应该用 Chrome 的自带调试工具查错。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$("#sel1").val();
追问
用这个 调用jQuery 的js 有什么版本限制吗? 为什么我的会报错啊?
“Microsoft JScript 运行时错误: 缺少对象”
内容是在jQuery.js 里报错的!麻烦指导一下小弟。。。
追答
没有,你只需要导入一个使用jquery的外部jS文件就能用jquery了啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$(".sub").each(function(i){
$(this).val();
})
循环 取值就行
$(this).val();
})
循环 取值就行
追问
谢谢2L 提供的答案,对于你说的把平谷和嘉定放在一起,不太理解,我实现的是,选择一级中的“北京”,在二级显示的是“北京,平谷”,如果选择“上海”的话,出来的是“上海,嘉定”,还请楼上详细给小弟解答...
追答
楼下的已经说了 你参考他的把!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询