请问个关于 jquery 的问题。

2015-04-29 17:11:46 +08:00
 Anybfans

https://i.imgur.com/aLT1fdM.png

https://i.imgur.com/rppnpbo.png

如图。。其中ID为detail的为下拉列表。

图一的下拉列表中的数据是POST请求得到的。单机教师和学校会分别进行post。

然后返回数据组装成select下拉列表。 可是我现在想通过select的value值来让去默认选中

由于是动态的。所以很难使用

$("detial").find("option[value=这里可以GET得到]").attr("selected",true);

进行默认选中

求给个解决方法。

Python/django环境

1643 次点击
所在节点    问与答
12 条回复
Anybfans
2015-04-29 17:12:45 +08:00

hpfs0
2015-04-29 17:22:31 +08:00
$("#detial").find("option[value=这里可以GET得到]").attr("selected",true);
Anybfans
2015-04-29 17:25:03 +08:00
@hpfs0 不行的。。我这里打错了而已。。
Anybfans
2015-04-29 17:26:14 +08:00
@hpfs0 忘记打#了。。不行。

alert($("#detail").find("option[value='2']").val());
alert($('#detail option:first').val());

都不行。。
davepkxxx
2015-04-29 17:28:32 +08:00
@Anybfans
alert($("#detail").val());
hpfs0
2015-04-29 17:30:00 +08:00
@Anybfans 哦,那可以在后台就把要默认选择的那项selected属性设置好就可以了,传到前台的时候动态组装select就可以了
davepkxxx
2015-04-29 17:30:19 +08:00
@hpfs0 把attr("selected",true) 换成 prop("selected", "true") 比较好
hpfs0
2015-04-29 17:35:22 +08:00
@davepkxxx 一样没用。。
ALeo
2015-04-29 17:40:51 +08:00
$( "#myselect option:selected" ).val()
hpfs0
2015-04-29 17:44:58 +08:00
@Anybfans 刚才试了下,用$("#detail option").each(function() { this.selected = (this.value == "3"); });就可以了。
Anybfans
2015-04-29 17:45:19 +08:00
@davepkxxx
@hpfs0
@ALeo
行了。。
$("#detail").val({{fee_id}}); 我把这句话加在了POST中
用$("#detail").find(option[value={{fee_id}}]).attr("selected",true) 或者 attr("selected",true) 全部无效。。
Anybfans
2015-04-29 17:46:56 +08:00
貌似必须放$.post里面。。出来就不行了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/187285

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX