javascript - js 里如何让reset按钮重置之后不改变select标签里面的初始属性
怪我咯
怪我咯 2017-04-11 13:19:25
[JavaScript讨论组]

rt,我的表单样式里面有一个要依靠后台数据来初始化显示的select内容(是否置顶),我使用Js实现的动态选择。但是现在有一个问题,当我点击重置之后它就自动变成“否”(代码里面写在前面那个内容),有时候我根据后台内容默认初始的是“是”,重置之后也变成“否”了,我应该怎么做才能让重置之后select选中的依然是选择之后的值。我尝试在reset按钮之后加了一个onclick操作让他来再选择一次依然没有用,请问我应该怎么做?

我的代码如下:
select

   

            

js:


            
            
            
            
            
            
            
            
            
            
            
            

            
怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(4)
天蓬老师
<select name="pro_isFirst" id="pro_isFirst">
  <option value="0" {$projectinfo['pro_isFirst'] == "0" ? 'selected' : ''}>否</option>
  <option value="1" {$projectinfo['pro_isFirst'] == "1" ? 'selected' : ''}>是</option>
</select>

虽然不知道你用的是什么模版引擎, 但是思路就是这样子, 再用js给select再赋值一次, 纯属多此一举.
reset之后, select如果有option带selected属性, 那么自动选择该选项, 如果没有, 则自动选中第一个

PHP中文网

不是很明白楼主的动机,重置一般是reset到表单初始状态,如果表单初始时 是否置顶就是显示“否”的话,那么reset就应该显示“否”。

伊谢尔伦

提供一些思路:

  1. 利用cookie本地存储一些数据,在系列select选择时存入,然后在reset处理过程中取出,从而保持状态

  2. 在cookie不能用时的一种方法:利用地址信息,reset处理前构造一个特殊的访问地址,其包括了select信息,但又不引置额外的处理(特别是和服务器端的数据交换等等——数据都已经缓存在本地),在页面加载中会读取地址信息进行重置,相当于 http://XXXX.xxx:Port/XXXX.html#select=XXXX ,而默认的是http://XXXX.xxx:Port/XXXX.html,因为#后的数据是可以解析出来的,所以可以做很多操作

阿神

如果不想让button[type=reset]控制那个下拉select,可以直接把这个select放在form外面.
如果提交时需要提交select的内容再把它加进来好了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号