当前位置:   article > 正文

JQuery学习之(二)_button id=btn1 瞬间显示

button id=btn1 瞬间显示

1.属性选择

 
包含指定属性的 jquery 对象
例: $(‘input[name]’) ,表示获取所有具有 name 属性的 input 元素,只有硬编码写出了 name 属性,才会被选择到
= 的:表示属性等于指定值的,如 $('input[name=hello]')
带* = 的:表示属性包含指定值的,如 $('input[name*=hello]')
^= 的:表示以指定字符开头的
$= 的:表示以指定字符结尾的
写多个 [] :表示同时具有多个属性的,多个 [] 中的属性不分先后,如 $('input[id][name][style]')
 
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>02属性选择器</title>
  6. <script src="scripts/jquery-1.7.1.min.js"></script>
  7. <script>
  8. $(function () {
  9. $('input');
  10. });
  11. </script>
  12. </head>
  13. <body>
  14. <input type="button" id="btn1" value="显示1" />
  15. <input type="button" id="btn2" />
  16. <input type="button" value="显示3" />
  17. <input type="text" id="txt1" />
  18. </body>
  19. </html>

2.表单选择器

选择指定类型的元素,使用“:类型”,这是“input[type=类型]”的简写形式
$(':checkbox'):选择所有的checkbox元素
jq对象调用val()方法,则返回第一个对象的value值;如果要获取所有项的value,需要each循环遍历
4种常用选择器的简写
:enabled:选择所有被启用的元素
:disabled:选择所有被禁用的元素
:checked:表示checked属性为选中状态的元素,用于checkbox、radio控件
:selected:表示所有被selected的option,用于select控件

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>03权限选择</title>
  6. <script src="scripts/jquery-1.7.1.min.js"></script>
  7. <script>
  8. $(function () {
  9. //为 右移按钮 绑定事件
  10. $('#btnRightAll').click(function () {
  11. //获取所有子元素,追加到右边的select
  12. $('#selectLeft').children().appendTo('#selectRight');
  13. });
  14. //为 单个右移事件 绑定事件
  15. $('#btnRight').click(function () {
  16. //获取所有被选中的option
  17. $('#selectLeft :selected').appendTo('#selectRight');
  18. });
  19. //为“全部左移”按钮绑定事件
  20. $('#btnLeftAll').click(function () {
  21. //获取右侧所有的option
  22. $('#selectLeft').append($('#selectRight option'));
  23. });
  24. //为“选中左移”按钮绑定事件
  25. $('#btnLeft').click(function () {
  26. //获取右侧选中的项,加到左边
  27. $('#selectLeft').append($('#selectRight :selected'));
  28. });
  29. });
  30. </script>
  31. </head>
  32. <body>
  33. <select id="selectLeft" multiple="true">
  34. <option>北京</option>
  35. <option>上海</option>
  36. <option>广州</option>
  37. <option>深圳</option>
  38. </select>
  39. <input type="button" id="btnRightAll" value=">>" />
  40. <input type="button" id="btnRight" value=">" />
  41. <input type="button" id="btnLeft" value="<" />
  42. <input type="button" id="btnLeftAll" value="<<" />
  43. <select id="selectRight" multiple="true"></select>
  44. </body>
  45. </html>

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>04表格数据</title>
  6. <style>
  7. #bgDiv {
  8. position: absolute;
  9. left: 0px;
  10. top: 0px;
  11. background-color: black;
  12. opacity: 0.2; /*设置不透明度,即可以看到层下面的内容,但是由于层的遮挡,是不可以进行操作的*/
  13. display: none;
  14. }
  15. #fgDiv {
  16. position: absolute;
  17. width: 300px;
  18. height: 100px;
  19. border: 1px solid red;
  20. background-color: #e7e7e7;
  21. display: none;
  22. }
  23. </style>
  24. <script src="scripts/jquery-1.7.1.min.js"></script>
  25. <script>
  26. var list = [
  27. { id: '1', country: '中国', capital: '北京' },
  28. { id: '2', country: '美国', capital: '华盛顿' },
  29. { id: '3', country: '日本', capital: '东京' },
  30. { id: '4', country: '韩国', capital: '首尔' }
  31. ];
  32. $(function () {
  33. //数据表
  34. $.each(list, function () {
  35. $('<tr id="' + this.id + '">' +
  36. '<td><input type="checkbox"/></td>' +
  37. '<td>' + this.id + '</td>' +
  38. '<td>' + this.country + '</td>' +
  39. '<td>' + this.capital + '</td>' +
  40. '<td><input type="button" value="修改"/></td>' +
  41. '</tr>').appendTo('#list');
  42. });
  43. //为复选框chkAll设置点击事件,完成全选、全消的功能
  44. $('#chkAll').click(function () {
  45. //根据当前复选框的状态设置其它行复选框的状态
  46. $('#list :checkbox').attr('checked', this.checked);
  47. });
  48. //反选
  49. $('#btnReverse').click(function () {
  50. //获取实际数据行的复选框
  51. $('#list :checkbox').each(function () {//jquery对象.each
  52. this.checked = !this.checked;
  53. });
  54. });
  55. //删除选中项
  56. $('#btnRemove').click(function () {
  57. //确认
  58. if (confirm('确定要删除吗')) {
  59. //获取所有数据行中选中的checkbox
  60. //$('#list :checked').parent().parent().remove();
  61. //直接在祖宗节点中找到tr节点
  62. $('#list :checked').parents('tr').remove();
  63. }
  64. });
  65. //添加
  66. $('#btnAdd').click(function () {
  67. //显示添加界面
  68. $('#bgDiv').css('display', 'block')
  69. .css('width', window.innerWidth + 'px')
  70. .height(window.innerHeight + 'px');
  71. $('#fgDiv').css('display', 'block')
  72. .css('left', (window.innerWidth - 300) / 2 + 'px')
  73. .css('top', (window.innerHeight - 100) / 2 + 'px');
  74. //清除文本框中的数据
  75. $('#fgDiv :text,:hidden').val('');
  76. });
  77. //保存
  78. $('#btnSave').click(function () {
  79. var id = $('#hidId').val();
  80. if (id == '') { //添加
  81. $('<tr id="' + $('#txtId').val() + '">' +
  82. '<td><input type="checkbox"/></td>' +
  83. '<td>' + $('#txtId').val() + '</td>' +
  84. '<td>' + $('#txtCountry').val() + '</td>' +
  85. '<td>' + $('#txtCapital').val() + '</td>' +
  86. '<td><input type="button" value="修改"/></td>' +
  87. '</tr>').appendTo('#list')
  88. .find(':button').click(function () {//为修改按钮绑定事件
  89. //显示添加界面
  90. $('#bgDiv').css('display', 'block')
  91. .css('width', window.innerWidth + 'px')
  92. .height(window.innerHeight + 'px');
  93. $('#fgDiv').css('display', 'block')
  94. .css('left', (window.innerWidth - 300) / 2 + 'px')
  95. .css('top', (window.innerHeight - 100) / 2 + 'px');
  96. //找到当前按钮所在td的之前的所有td,因为数据就在这些td中
  97. var tds = $(this).parent().prevAll();
  98. //设置文本框的值
  99. $('#hidId').val(tds.eq(2).text());//作用:在修改后用于查找原始数据的行
  100. $('#txtId').val(tds.eq(2).text());
  101. $('#txtCountry').val(tds.eq(1).text());
  102. $('#txtCapital').val(tds.eq(0).text())
  103. });
  104. } else {//修改
  105. var tds = $('#' + id + '>td');
  106. tds.eq(1).text($('#txtId').val());
  107. tds.eq(2).text($('#txtCountry').val());
  108. tds.eq(3).text($('#txtCapital').val());
  109. //改tr的id属性,保持数据一致
  110. $('#' + id).attr('id', $('#txtId').val());
  111. }
  112. //隐藏层
  113. $('#bgDiv').css('display', 'none');
  114. $('#fgDiv').css('display', 'none');
  115. });
  116. //修改
  117. $('#list :button').click(function () {
  118. //显示添加界面
  119. $('#bgDiv').css('display', 'block')
  120. .css('width', window.innerWidth + 'px')
  121. .height(window.innerHeight + 'px');
  122. $('#fgDiv').css('display', 'block')
  123. .css('left', (window.innerWidth - 300) / 2 + 'px')
  124. .css('top', (window.innerHeight - 100) / 2 + 'px');
  125. //找到当前按钮所在td的之前的所有td,因为数据就在这些td中
  126. var tds = $(this).parent().prevAll();
  127. //设置文本框的值
  128. $('#hidId').val(tds.eq(2).text());//作用:在修改后用于查找原始数据的行
  129. $('#txtId').val(tds.eq(2).text());
  130. $('#txtCountry').val(tds.eq(1).text());
  131. $('#txtCapital').val(tds.eq(0).text());
  132. });
  133. });
  134. </script>
  135. </head>
  136. <body>
  137. 修改操作:1、将原有数据展示在div中;2、点击保存时,需要知道对应表格中的哪行数据;3、为新增的修改按钮绑定事件
  138. <br />
  139. 难点:在第2步中,如何在点击div中按钮时,知道对应原表格中的哪行数据
  140. <hr />
  141. <input type="button" id="btnAdd" value="添加" />
  142. <input type="button" id="btnReverse" value="反转" />
  143. <input type="button" id="btnRemove" value="删除选中项" />
  144. <table border="1">
  145. <thead>
  146. <th width="100"><input type="checkbox" id="chkAll" /></th>
  147. <th width="100">编号</th>
  148. <th width="100">国家</th>
  149. <th width="100">首都</th>
  150. <th width="100">修改</th>
  151. </thead>
  152. <tbody id="list"></tbody>
  153. </table>
  154. <div id="bgDiv">
  155. </div>
  156. <div id="fgDiv">
  157. <input type="hidden" id="hidId" />
  158. 编号:<input type="text" id="txtId" />
  159. <br />
  160. 国家:<input type="text" id="txtCountry" />
  161. <br />
  162. 首都:<input type="text" id="txtCapital" />
  163. <br />
  164. <input type="button" id="btnSave" value="保存" />
  165. </div>
  166. </body>
  167. </html>

 
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/574176
推荐阅读
相关标签
  

闽ICP备14008679号