当前位置: 首页 > news >正文

Submit disabled Dropdown

需求:完成一个不可以改的dropdown,(符合一定logic)在js中设value,并且提交表单时把值提交到server


1.尝试readonly


<script src="jquery-1.11.1.min.js"></script>




<form name="frm" method="post">
<select id="sel" name="sel">
<option value="1" >1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>


<input type="submit" value="submit" />
</form>


<script>
$(document).ready(function(){


$("#sel").val(2);
$("#sel").attr("readonly","readonly");


});


</script>




结果发现,readonly对dropdown是无效的,用户依然可以选,我们必须disable掉它。


2.尝试disable


<script src="jquery-1.11.1.min.js"></script>




<form name="frm" method="post">
<select id="sel" name="sel">
<option value="1" >1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>


<input type="submit" value="submit" />
</form>


<script>
$(document).ready(function(){


$("#sel").val(2);
$("#sel").attr("disabled","disabled");


});


</script>



结果发现,提交表单时,html form 并没有带上disable的成员







现在disable拿掉,可以看到html form中包含了dropdown的值




3.依然disable,但是提交表单时把disable拿掉


html不变,script加一句变为:


$(document).ready(function(){


 $("#sel").closest("form").submit(function () {
                $("#sel").removeAttr("disabled");
            });


$("#sel").val(2);
$("#sel").attr("disabled","disabled");


});




可以看到,这样就实现了需求。



当然,还可以通过hidden的方式来实现同样的事情,即在dropdown值改变的时候更新hidden。

相关文章:

  • Validation failed for one or more entities. See 'EntityValidationErrors' property for more details
  • [Windows编程] 如何判断操作系统是64位还是32位
  • 使用Roslyn动态编译和执行
  • 利用Windows7内置功能管理虚拟磁盘
  • 使用cecil 完成 code injection
  • 善用属性
  • SQLServer任意列之间的聚合
  • [编程技巧] 巧用CPU缓存优化代码:数组 vs. 链表
  • 保存Bitmap到内存流中引发“GDI+中发生一般性错误”
  • Asp.net Mvc使用PagedList分页
  • [Web开发] PSD 转换成HTML/CSS 的工具网站
  • 算法练习--整数拆分为素数乘积
  • 算法练习--卡片游戏
  • [IE编程] 了解Urlmon.dll和Wininet.dll
  • 算法练习--小球下落
  • 0x05 Python数据分析,Anaconda八斩刀
  • angular2开源库收集
  • canvas绘制圆角头像
  • Elasticsearch 参考指南(升级前重新索引)
  • JavaScript服务器推送技术之 WebSocket
  • Linux下的乱码问题
  • PAT A1120
  • react 代码优化(一) ——事件处理
  • scrapy学习之路4(itemloder的使用)
  • Spark学习笔记之相关记录
  • 初识 beanstalkd
  • 当SetTimeout遇到了字符串
  • 技术胖1-4季视频复习— (看视频笔记)
  • 跳前端坑前,先看看这个!!
  • 通过npm或yarn自动生成vue组件
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 昨天1024程序员节,我故意写了个死循环~
  • ​业务双活的数据切换思路设计(下)
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (ctrl.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“
  • (rabbitmq的高级特性)消息可靠性
  • (笔试题)分解质因式
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • **PHP二维数组遍历时同时赋值
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .Net各种迷惑命名解释
  • @FeignClient注解,fallback和fallbackFactory
  • []我的函数库
  • [Asp.net mvc]国际化
  • [BZOJ4016][FJOI2014]最短路径树问题
  • [C++]打开新世界的大门之C++入门
  • [CareerCup] 17.8 Contiguous Sequence with Largest Sum 连续子序列之和最大
  • [CTF]2022美团CTF WEB WP