一、获取哦表单元素

dcoument表单文本对象的集合

all[] 对所有html元素的访问

forms 返回对文档中所有form对象的引用

forms[1] 对所有form对象引用


<script type="text/javascript">
function fun(){
document.all[11].innerHTML = "你好" ; document.forms[1].username.value = "张无忌" ; document.images[2].src = "images/1.jpg" ;
}
</script>
<body onload = "fun()">
<P></p>
<form method="post" action="">
姓名1:<input type="text" name="">
</form>
<form method="post" action="">
姓名2:<input type="text" name="username">
</form>
<form method="post" action="">
姓名3:<input type="text" name="">
</form> <img src = "" alt = "aa"><img src = "" alt = "bb"><img src = "" alt = "cc">
</body>

  通过集合来访问相应的对象
     1.通过下标的形式
     2.通过name形式


下标
alert(document.forms[1].name)
name属性
alert(document.forms["myform1"].text1.value) <form name="myform">
<code>&lt;form name="tt"&gt;&lt;/form&gt;
function checkform(id)
{
var formlist = document.getElementById(id).childNodes;
for(var i=0;i&lt;formlist.length;i++)
{
alert(formlist[i].type)
alert(formlist[i].value)
}
}

2.element获取所有表单元素

表单对象.elements  获得表单里面所有元素的集合
表单对象.elements[下标]
表单对象.elements["name"]
表单对象.elements.name


window.onload=function(){
var form=document.myform
var element=form.elements
}
&lt;body&gt;
&lt;form name="myform"&gt;
&lt;input type="text" name="username" value="baidu.com"&gt;&lt;br&gt;
&lt;input type="text" name="address" value="青岛"&gt;&lt;br&gt;
&lt;select name="kecheng"&gt;
&lt;option value="css" selected=""&gt;css&lt;/option&gt;
&lt;option value="div"&gt;div&lt;/option&gt;
&lt;/select&gt;
&lt;/form&gt;
&lt;input type="button" value="查看效果"/&gt;
&lt;/body&gt;


var eles=document.myform.elements.length;
alert(eles) var names=document.myform.elements[0].value;
var names=document.myform.elements["names"].value;
var names=document.myform.elements.names.value;

3.forms[1] 对所有form对象引用


&lt;script type="text/javascript"&gt;
function fun(){
document.all[11].innerHTML = "你好" ; document.forms[1].username.value = "张无忌" ; document.images[2].src = "images/1.jpg" ;
}
&lt;/script&gt;
&lt;body onload = "fun()"&gt;
&lt;P&gt;&lt;/p&gt;
&lt;form method="post" action=""&gt;
姓名1:&lt;input type="text" name=""&gt;
&lt;/form&gt;
&lt;form method="post" action=""&gt;
姓名2:&lt;input type="text" name="username"&gt;
&lt;/form&gt;
&lt;form method="post" action=""&gt;
姓名3:&lt;input type="text" name=""&gt;
&lt;/form&gt; &lt;img src = "" alt = "aa"&gt;&lt;img src = "" alt = "bb"&gt;&lt;img src = "" alt = "cc"&gt;
&lt;/body&gt;

取出窗体中的所有表单的数量:document.forms.length

二、获取表单中的标签元素

1.文本域 : 操作文本域的值 value 属性,设置或者获取值


var names=document.forms[0].elements.names.value="lisi";
alert(names)

文本域回显


&lt;p style="margin-top: -22px; padding-left: 40px;"&gt;&lt;input type="text" name="matainReasonRemark" class="long"/&gt;&lt;/p&gt; $.ajax({
type : "POST",
url : uxl,
data : param,
success : function(list) {
var matainReasonRemark= obj.data.MATAIN_REASON_REAMRK;
$("input[name='matainReasonRemark']").val(matainReasonRemark);
});
},
error : function(data) { },
});

三、表单校验

1.onsubmit  当表单提交的时候触发的事件
2.onblur
3.onfocus
4.onchange

非空


&lt;script&gt;
function check (obj) {
if(obj.names.value==""){
alert("姓名不能为空");
return false;
}
if(obj.age.value==""){
alert("年龄不能为空");
return false;
}
var statu=0;
for (var i=0; i&lt;obj.sex.length; i++) {
if(obj.sex[i].checked){
statu=1;
}
}
if(!statu){
alert("性别不能为空");
return false; //阻止事件的默认行为(适用于所有事件)
}
}
&lt;/script&gt; &lt;form name="myform" action="" method="post" onsubmit=" return check(this)"&gt;
性别:&lt;input type="radio" name="sex" value="man"&gt;男 &lt;input type="radio" name="sex" value="woman"&gt;女&lt;br/&gt;
&lt;/form&gt;

四、表单提交


&lt;script&gt;
window.onload=function () {
var subs=document.myform.subs;
subs.onclick=function () {
document.myform.action="1.html";
document.myform.submit();
} setTimeout(function () {
document.myform.action="2.html";
document.myform.submit();
},4000)
}
&lt;/script&gt; &lt;form name="myform" action="" method="post"&gt;
&lt;input type="text" name="names"&gt;
&lt;input type="button" value="提交" name="subs"&gt;
&lt;/form&gt;

 

二、表单回显

innerhtml的值是表单元素的值:如how are you,则innerhtml的值就是:how are you

innertext的值和上面的一样,只不过不会把em这种标记显示出来.  

获取div的内容使用$('#example').html()

或者要文本可以使用$('#example').text()
要获取input的值可以使用$('#example').val()

一、html()

用为读取和修改元素的HTML标签    对应js中的innerHTML

html()是用来读取元素的HTML内容(包括其Html标签),.html()方法使用在多个元素上时,只读取第一个元素


&lt;p&gt;
&lt;strong&gt;Hi!&lt;/strong&gt;
&lt;/p&gt; --------------------- $('p').html();//返回p元素的全部内容,包括内容里的标签,返回:&lt;strong&gt;Hi!&lt;/strong&gt; ---------------------

$('td[aria="View_CHECK_NAME"]').each(function(){
if($(this).html()=="yes"){
$(this).attr("style","color:red; text-align:center;cursor:pointer");
}
})

二、text()

用来读取或修改元素的纯文本内容  对应js中的innerText

text()用来读取元素的纯文本内容,包括其后代元素;.text()方法不能使用在表单元素上


&lt;p&gt;
&lt;strong&gt;Hi!&lt;/strong&gt;
&lt;/p&gt; ---------------------
$('p').text();/*返回p元素的文本内容,不包括内容里的标签,只返回:Hi! */ ---------------------

text()和html()的区别 :

(1)text()只能返回文本内容,而html()可以返回元素的全部内容 (2)text(str)设置元素内容时,只有文本内容有效,其余内容无效;而html(str)设置元素内容时,所有内容有效(包括标签) (3)text()返回所有匹配元素的内容,叠加;而html()只返回第一个匹配元素的内容


&lt;p&gt;Hi!&lt;/p&gt;&lt;p&gt;Hello!&lt;/p&gt; --------------------- $('p').text();//返回内容为所有p元素的内容叠加:Hi!Hello! --------------------- $('p').html();//返回内容为第一个p元素的内容:Hi! ---------------------

三、val();

用来读取或修改表单元素的value值,如button,text,hidden

val()是用来读取表单元素的"value"值,.val()只能使用在表单元素上

val是属性,只有有该属性的对象才能调用


&lt;input type='text' value='xxx'/&gt; 这个就需要用 val()。

关于三者的区别

   1. .val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。


$('p').html();            //返回p元素的html内容
$("p").html("Hello &lt;b&gt;nick&lt;/b&gt;!"); //设置p元素的html内容
$('p').text();            //返回p元素的文本内容
$("p").text("nick");        //设置p元素的文本内容
$("input").val();          //获取文本框中的值
$("input").val("nick");      //设置文本框中的内容

    2 .html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。



   &lt;script type="text/javascript"&gt;
$(document).ready(function(){
$("#btn1").click(function(){
$(".aa").text(function(i,oriText){
alert("原文本:"+oriText+"新文本:hello world! index("+i+")");
});
});
}); &lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;button>
<code>var sex=document.myform.sex;
sex[0].checked=true;
for (var i=0; i&lt;sex.length; i++) {
if(sex[i].checked){
alert(sex[i].value)
}
}

多选按钮 : checked  返回或者设置单选的选中状态true 选中,false 未选中。value 属性 获取选中的值,必须先判断选中状态。


var likes=document.forms.myform["like[]"];
likes[2].checked=true;
for (var i=0; i&lt;likes.length; i++) {
if(likes[i].checked){
alert(likes[i].value);
}
}

多选按钮数据回显


&lt;p&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="1"/&gt;1、无关闭&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="2"/&gt;2、升高&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="3"/&gt;3、降低&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="4"/&gt;4、压力低&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="5"/&gt;5、压力不稳&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="6"/&gt;6、漏气&lt;/label&gt;
&lt;label&gt;&lt;input type="checkbox" name="matainReason" value="7"/&gt;7、定期&lt;/label&gt;
&lt;/p&gt; $.ajax({
type : "POST",
url : uxl,
data : param,
success : function(list) {
$.each(list,function(index,obj){
var matainReason = obj.data.MATAIN_REASON;
var matainReasonArr = matainReason.split(",");
var matainReasonBox = $("input[name='matainReason']");
for(var i=0;i&lt;matainReasonArr.length;i++){
$.each(matainReasonBox,function(j,checkbox){
var checkValue=$(checkbox).val();
if(matainReasonArr[i]==checkValue){
$(checkbox).attr("checked",true);
}
})
} });
},
error : function(data) { },
});

多选框数据回显


&lt;tr style="height: 200px"&gt;
&lt;td style="width: 180px" colspan="9"&gt;
&lt;label style="font-size:15px;"&gt;培训内容:&lt;/label&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="1" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;灶具零部件的使用方式方法&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="2" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;胶管、减压器、卡箍更换周期&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="3" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;钢瓶使用安全注意事项&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="4" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;其他&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;/td&gt;
&lt;/tr&gt;

  var boxObj = $("input:checkbox[name='trainContent']");  //获取所有的复选框
    var expresslist = data.data.trainContent; //用el表达式获取在控制层存放的复选框的值为字符串类型
    if(null!=expresslist){
var express = expresslist.split(','); //去掉它们之间的分割符“,” 
    for(i=0;i&lt;boxObj.length;i++){
       for(j=0;j&lt;express.length;j++){            
           if(boxObj[i].value == express[j])  //如果值与修改前的值相等
           {
               boxObj[i].checked= true;
               break;
           }
       }
    }
} &lt;tr style="height: 200px"&gt;
&lt;td style="width: 180px" colspan="9"&gt;
&lt;label style="font-size:15px;"&gt;培训内容:&lt;/label&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="1" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;灶具零部件的使用方式方法&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="2" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;胶管、减压器、卡箍更换周期&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="3" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;钢瓶使用安全注意事项&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;input type="checkbox" name="trainContent" value="4" style="width: 20px;height: 20px;padding: 6px 6px 6px 6px"/&gt;&lt;label style="font-size:15px;padding: 6px 6px 6px 6px";"&gt;其他&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;
&lt;/td&gt;

selected  设置或返回下拉框的选中状态,true 选中,false 未选中。selectedIndex  设置或返回下拉框被选中的索引号


var school=document.myform.school;
var school=document.myform.school.options;
alert(school.length)
//selected设置选中状态
school[1].selected=true;
//selectedIndex设置选中状态
school.selectedIndex=2;

&lt;form name="form1"&gt;
文本框 :&lt;input type="text" value="txt" /&gt;
&lt;br /&gt;
单选按钮:&lt;input type="radio" value="男" name="sex" /&gt;男 &lt;input type="radio" value="女" name="sex" checked="checked"/&gt;女
&lt;br /&gt;
复选框:&lt;input type="checkbox" value="1" name="check[]"/&gt;1&lt;input type="checkbox" value="2" checked="checked" name="check[]" /&gt;2&lt;input type="checkbox" value="3" checked="checked" name="check[]" /&gt;3
&lt;br /&gt;
下拉框:
&lt;select style="width: 100px"&gt;
&lt;option value="yi"&gt;1&lt;/option&gt;
&lt;option value="er" selected="selected"&gt;2&lt;/option&gt;
&lt;option value="san"&gt;3&lt;/option&gt;
&lt;/select&gt;
&lt;br /&gt;
&lt;input type="button" value="获取" onclick="getVal()"/&gt;
&lt;/form&gt;

&lt;script type="text/javascript"&gt; function getVal(){
var str="";
//获取单选按钮的值
var radios = document.form1.sex;
var n = radios.length;
for (var i = 0; i &lt; n; i++) {
if (radios[i].checked) {
str = " 单选 "+radios[i].value;
}
}
//还有获取单选框的值有三种方式:
$('input:radio:checked').val();
$("input[type='radio']:checked").val();
$("input[name='sex']:checked").val(); //获取复选框中选中的值的组合 1,2,3,4
var checkboxs = document.getElementsByName('check[]');
var n = checkboxs.length;
for (var i = 0; i &lt; n; i++) {
if (checkboxs[i].checked) {
str += " 复选框 "+checkboxs[i].value;
}
}
//获取下拉列表的选中项的值
//方法一:
str += " 列表 一:"+document.getElementById("sel").value; //方法二:
var sel = document.getElementById("sel");
str += " 列表 二:"+sel.options[sel.selectedIndex].value;
alert(str); }
&lt;/script&gt;

全选反选


&lt;script type="text/javascript"&gt;
function checkAll(flag){
//拿到所有的多选框
var hobbys = document.getElementsByName("hobby") ;
//循环赋值
for(var i =0 ;i&lt;hobbys.length ;i++){
hobbys[i].checked = flag ;
}
} function reverseCheck(){
//拿到所有的多选框
var hobbys = document.getElementsByName("hobby") ;
//循环赋值
for(var i =0 ;i&lt;hobbys.length ;i++){
hobbys[i].checked = !hobbys[i].checked ;
}
}
&lt;/script&gt;
&lt;body&gt;
&lt;h1&gt;请选择你的爱好:&lt;/h1&gt;
全选/全不选&lt;input type="checkbox" name="hobbys" onclick="checkAll(this.checked)" /&gt;&lt;br/&gt;
&lt;input type="checkbox" name="hobby" value="football"/&gt;足球
&lt;input type="checkbox" name="hobby" value="basketball" /&gt;篮球
&lt;input type="checkbox" name="hobby" value="swim" /&gt;游泳
&lt;input type="checkbox" name="hobby" value="singing"/&gt;唱歌&lt;br/&gt; &lt;input type="button" value="全选" onclick="checkAll(true)"/&gt; &lt;input type="button" value="全不选" onclick="checkAll(false)"/&gt;
&lt;input type="button" value="反选" onclick="reverseCheck()"/&gt; &lt;/body&gt;

全选全不选


全选&lt;input type='radio' name='radios'&gt;
全不选&lt;input type='radio' name='radios'&gt;
反选&lt;input type='radio' name='radios'&gt;
//全选
window.onload=function () {
var nums=document.getElementsByName("nums");
var radios=document.getElementsByName("radios"); for (var i=0; i&lt;radios.length; i++) {
(function (a) {
radios[a].onclick=function () {
if(a==0){
for (var i=0; i&lt;nums.length; i++) {
nums[i].checked=true;
}
}
}
})(i)
} radios[0].onclick=function () {
for (var i=0; i&lt;nums.length; i++) {
nums[i].checked=true;
}
} //全不选
radios[1].onclick=function () {
for (var i=0; i&lt;nums.length; i++) {
nums[i].checked=false;
}
} //反选
radios[2].onclick=function () {
for (var i=0; i&lt;nums.length; i++) {
if(nums[i].checked){
nums[i].checked=false;
}else{
nums[i].checked=true;
}
}
}
} function fun (a,b,c) {
c[b].onclick=function () {
if(b==0){
for (var i=0; i&lt;a.length; i++) {
a[i].checked=true;
}
}
if(b==1){
for (var i=0; i&lt;a.length; i++) {
a[i].checked=false;
}
}
if(b==2){
for (var i=0; i&lt;a.length; i++) {
if(a[i].checked){
a[i].checked=false;
}else{
a[i].checked=true;
}
}
}
}
}

通过this实现全选全不选


&lt;ul style="display:block;"&gt;
&lt;li class="parent expanded"&gt;&lt;span&gt;&lt;input type="checkbox" checked="checked"/&gt;&lt;/span&gt;&lt;b&gt;&lt;img src="${ctx}/static/images/icon_fold_f.png"/&gt;&lt;/b&gt;
&lt;a href="javascript:;"&gt;网址&lt;/a&gt;
&lt;ul class="Item" style="display:block"&gt;
&lt;/ul&gt;
&lt;/li&gt;

$("#all").change(function() {
if ($(this).attr("checked")) {
$(".Item").each(function() {
$(this).attr("checked", true);
});
} else {
$(".Item").each(function() {
$(this).attr("checked", false);
});
}
})

 

 

 

 

 

 

 

来源:

jquery获取表单元素与回显的更多相关文章

  1. jquery 获取表单的用户输入值的方法

    以前的表单中的select input textarea的用户选择输入是通过jQuery的val()方法获取到的,在三一Java前端大拿教我了一个方法可以不用那么麻烦获取数据,只要在这些表单元素上加n ...

  2. JS获取表单元素的value

    <!-- 1.option selected属性,如果我们在下拉列表里面选择了一个option那么他的selected="true" ,如果我们想设置当前的option是选中 ...

  3. jQuery name属性与checked属性结合获取表单元素值

    var paytype = $("input[name='paytype']:checked").val(); alert(paytype); input元素下名称为paytype ...

  4. 基于JQuery实现表单元素值的回写

    form.jsp: <%@ page language="java" import="java.util.*" pageEncoding="GB ...

  5. jQuery获取表单各元素的值

    radio值获取 $("input[type='radio']:checked").val(); 2,设置指定的项为当前选中项 $("input[type='radio' ...

  6. 用jQuery获取表单的值

    在日常开发过程中,有许多用到表单的地方.比如登录,注册,比如支付,填写订单,比如后台管理等等. 使用jQuery来获取表单的值是比较常见的做法. 常见表单 单行文字域:<input type=' ...

  7. jquery 获取表单的内容以JSON对象形式返回

    添加一个serializeJson方法 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&quo ...

  8. jQuery选取表单元素

    表单元素选择器 选择器                    说明 :button                 <button>元素和type属性值为button的<input& ...

  9. jQuery获取表单全部数据

    iQuery如何获取表单的全部数据,用于ajax提交 var formData = {}; var t = $('#Form').serializeArray(); $.each(t, functio ...

随机推荐

  1. [译] 通过 contentEditable 属性创建一个所见即所得的编辑器(富文本编辑器)

    译者注 这只是一篇入门教程,介绍了一些基础知识,仅供参考,切不可因此觉得富文本编辑器很简单. 创建富文本编辑器是一个非常复杂的工程,需要考虑到方方面面,也有很多坑(请参考原文第一条评论). 为免误导大 ...

  2. PHP使用微软认知服务Face API

    下面主要介绍基于PHP语言,基于guzzle类库,调用微软最新推出的认知服务:人脸识别. 实验环境: IDE:Eclipse for PHP Developers Version: Neon.1 Re ...

  3. ESXi安装iso镜像添加驱动(esxi6.5,6.7)

    准备工作:1.安装 Windows PowerShell 3.0 (需要启用Windows AutoUpdate服务,安装完毕计算机需要重启) https://www.microsoft.com/en ...

  4. 工作总结 页面通过ajax 动态绑定 列表页面 列表每一项的事件 事件触发多次

    遇到一个问题 困惑了两天  页面的事件不知道为什么触发多次 试了各种办法 对比了之前的页面 各种测试 不是js css 外部链接 重复加载问题  也不是嵌套的 div 问题 各种都试过 最终发现 是 ...

  5. Android 完整开源应用大全,完整开源项目

    (Antox)聊天的  (new) (OpenKeychain)OpenPGP在android上的实现  (new) (Flock)提供同步服务 (OpenFlappyBird)以前火爆的坑爹鸟 (F ...

  6. sprint3 【每日scrum】 TD助手站立会议第七天

    站立会议 组员 昨天 今天 困难 签到 刘铸辉 (组长) 在日历各个事件上都增加闹钟显示,并将数据传递给日程和时间表 调整闹钟和整个项目的显示效果,最后做出了微信界面滑动的显示效果 闹钟在广播协议的时 ...

  7. js中的DOM节点

    文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法. DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 把上面的代码拆分为Dom节 ...

  8. 恢复不小心误覆盖的代码文件 (sublime编辑器)

    最新写了一个python脚本,另外在终端上运行一个shell脚本循环记录一些性能.耗时参数.取出记录的数据,使用python pyplot强大的绘图功能来可视化,易用程度仅次于matlab. 本次文件 ...

  9. NSIS 变量

    $PROGRAMFILES 程序文件目录(通常为 C:\Program Files 但是运行时会检测). $COMMONFILES 公用文件目录.这是应用程序共享组件的目录(通常为 C:\Progra ...

  10. nginx(Window下安装 & 配置文件参数说明 & 实例)

    一.为什么需要对Tomcat服务器做负载均衡:  Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站 ...