如何使用js控制form表单中的select标签?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用js控制form表单中的select标签?相关的知识,希望对你有一定的参考价值。
如果没有选择select中的值 提示用户选择,返回去让用户选择……麻烦知道的给写写,谢谢……
参考技术A <form id="myform" ><select name="month" id="month">
<option value="" selected="selected">请选择</option>
<option value="01">January</option>
<option value="02">February</option>
<option value="03" >March</option>
<option value="04">April</option>
</select>
<input type="submit" />
</form>
<script language="javascript">
<!--
var myForm = document.getElementById("myform");
var slct = document.getElementById("month");
function check()
alert(!!slct.value);
if(!slct.value) alert("请选择"); return falseelse return true;
myForm.onsubmit=function ()return check();
-->
</script>本回答被提问者采纳
form表单中的带有name的标签直接转JSON
1. 将如下内容引入页面:
比如说新建一个 a.js,然后在页面中引入a.js
//将form表单序列化成json格式
$.fn.serializeObject = function () { var o = {}; var a = this.serializeArray(); $.each(a, function () { if (o[this.name] !== undefined) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ‘‘); } else { o[this.name] = this.value || ‘‘; } }); return o; };
2. 如果form如下所示:
<form id="myform"> <input type="text" id="loginName" name="loginName" class="form-control" placeholder="用户名" required=""> <input type="password" id="empPwd" name="empPwd" class="form-control" placeholder="密码" required=""> <button type="submit" class="btn btn-primary block full-width m-b" onclick="login();return false;">登 录</button> </div> </form>
此时我们想通过ajax的形式交此form中的带有name的input到后台,则可以如下使用:
<script> function login() { //ajax的形式提交表单 var url = "<%=basePath%>/emp/login"; var data=$("#myform").serializeObject(); //此处调用的就是我们写好的引入的方法,会将带有name的input,全部转为JSON。 $.post(url, data, function (data) { if (data.result == "false") { alert(data.reason); } else { alert("OK"); } }); } </script>
3.相比其他解决方法的优点:
a. 当然可以利用jquery获取每一个input的值,然后手动组装成json字符串提交,此操作费时费力,如果是如上结构可以直接使用。
b. 缺点,外层必须是form才行,注意事件需要return false;阻断原有跳转。
以上是关于如何使用js控制form表单中的select标签?的主要内容,如果未能解决你的问题,请参考以下文章
js 监测from表单中的input和select,时时监测,没有输入或选择信息报错,不允许提交数据