`
javatome
  • 浏览: 824858 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

select元素的操作使用类

 
阅读更多
再来第二个使用类,select元素的操作使用类。针对网页中select元素的操作实用类(静态方法)

js 代码
  1. /**-----------------------------------------------------------------------
  2. *------------------------针对select操作的实用Select类-------------------
  3. *-----------------------------------------------------------------------
  4. */
  5. functionSelect(){};
  6. /**
  7. *根据指定的JSON对象来生成指定的select的options项(清除原来的options).
  8. */
  9. Select.create=function(/*string*/selectId,/*jsonobject*/json){
  10. Select.clear(selectId);
  11. Select.add(selectId,json);
  12. };
  13. /**
  14. *该方法同create,只不过是在原来的基础上进行追加
  15. */
  16. Select.add=function(/*string*/selectId,/*jsonobject*/json){
  17. try{
  18. if(!json.options)return;
  19. for(vari=0;i<json.options.length;i++){
  20. Select.addOption(selectId,json.options[i].value,json.options[i].text);
  21. }
  22. }catch(ex){
  23. alert('设置select错误:指定的JSON对象不符合Select对象的解析要求!');
  24. }
  25. };
  26. /**
  27. *创建一个options并返回
  28. */
  29. Select.createOption=function(/*string*/value,/*string*/text){
  30. varopt=document.createElement('option');
  31. opt.setAttribute('value',value);
  32. opt.innerHTML=text;
  33. returnopt;
  34. };
  35. /**
  36. *给指定的select添加一个option,并返回当前option对象
  37. */
  38. Select.addOption=function(/*string*/selectId,/*string*/value,/*string*/text){
  39. varopt=Select.createOption(value,text);
  40. $(selectId).appendChild(opt);
  41. returnopt;
  42. };
  43. /**
  44. *获取指定select的当前被选中的options对象,如果为多选且有多个被选中则返回数组.
  45. */
  46. Select.getSelected=function(/*string*/selectId){
  47. varslt=$(selectId);
  48. if(!slt)returnnull;
  49. if(slt.type.toLowerCase()=="select-multiple"){
  50. varlen=Select.len(selectId);
  51. varresult=[];
  52. for(vari=0;i<len;i++){
  53. if(slt.options[i].selected)result.push(slt.options[i]);
  54. }
  55. returnresult.length>1?result:(result.length==0?null:result[0]);
  56. }else{
  57. varindex=$(selectId).selectedIndex;
  58. return$(selectId).options[index];
  59. }
  60. };
  61. /**
  62. *使指定索引位置的option被选中.从0开始.
  63. */
  64. Select.select=function(/*string*/selectId,/*int*/index){
  65. varslt=$(selectId);
  66. if(!slt)returnfalse;
  67. for(vari=0;i<slt.options.length;i++){
  68. if(index==i){
  69. slt.options[i].setAttribute("selected","selected");
  70. returntrue;
  71. }
  72. }
  73. returnfalse;
  74. };
  75. /**
  76. *选中指定的select的所有option选项,如果支持多选的话
  77. */
  78. Select.selectAll=function(/*string*/selectId){
  79. varlen=Select.len(selectId);
  80. for(vari=0;i<len;i++)Select.select(selectId,i);
  81. };
  82. /**
  83. *获取指定select的总的options个数
  84. */
  85. Select.len=function(/*string*/selectId){
  86. return$(selectId).options.length;
  87. };
  88. /**
  89. *清除select中满足条件的options,如果没有指定处理方法则清除所有options项
  90. */
  91. Select.clear=function(/*string*/selectId,/*function*/iterator){
  92. if(typeof(iterator)!='function'){
  93. $(selectId).length=0;
  94. }else{
  95. varslt=$(selectId);
  96. for(vari=slt.options.length-1;i>=0;i--){
  97. if(iterator(slt.options[i])==true)slt.removeChild(slt.options[i]);
  98. }
  99. }
  100. };
  101. /**
  102. *复制指定的select的option对象到另外一指定的select对象上.如果指定了处理
  103. *函数,那么只有返回true时才会copy.
  104. *函数iterator参数:当前处理的option对象、目标select的options数组
  105. */
  106. Select.copy=function(/*string*/srcSlt,/*string*/targetSlt,/*function*/iterator){
  107. vars=$(srcSlt),t=$(targetSlt);
  108. for(vari=0;i<s.options.length;i++){
  109. if(typeof(iterator)=='function'){
  110. if(iterator(s.options[i],$(targetSlt).options)==true){
  111. t.appendChild(s.options[i].cloneNode(true));
  112. }
  113. }else{
  114. t.appendChild(s.options[i].cloneNode(true));
  115. }
  116. }
  117. };
分享到:
评论

相关推荐

    Selenium WebDriver调用JQuery操作Select元素

    使用Selenium自带的API操作Select元素时页面可能出现上移或遮挡,导致元素操作失败; 介于此问题,可以使用JQuery来操作Select元素,具体实现见附件。

    select元素javascript常用操作

    select元素javascript常用操作,实用!

    select 控件操作大全

    Javascript 操作select控件大全(新增、修改、删除、选中、清空、判断存在等) JavaScript 1判断select选项中 是否存在Value="paraValue"的Item 2向select选项中 加入一个Item 3从select选项中 删除一个Item...

    javascript操作select元素实例分析

    本文实例讲述了javascript操作select元素的用法。分享给大家供大家参考。具体分析如下: 这里熟悉一下js对select元素的操作,html页面中建立一个form,其中包含一个select元素和submit按钮。 当选择select中某一项时...

    使select可以输入

    自制的jquery插件,只需要一行代码,即可将select控件变成一个即可以输入也可以选择的元素,输入时也会有智能提示。对原来的select的操作完全没有改变,取值依然是取select的值,设置选中,添加项删除项等等都没有...

    jquery操作select元素和option的实例代码

    主要介绍了jquery操作select元素和option的实例代码,感兴趣的小伙伴们可以参考一下

    JavaScript操作select元素和option的实例代码

    主要介绍了JavaScript操作select元素和option的实例代码的相关资料,需要的朋友可以参考下

    HTML常用表单元素操作源码

    在Web开发中,要经常操作表单元素,如input输入框,select下拉选择框,radio单选按钮,checkbox复选框等。这个包含了常用表单元素操作的代码。

    Javascript Select操作大集合

    现在步入正题,看到书中讲Form元素的操作,像Textbox、Button、Label等,都还是比较简单的,只是看到Select时,稍微有些复杂,于是就想仔细研究研究,于是就有了这篇文章。Select的操作包括动态添加、删除、移动、...

    解决vue select当前value没有更新到vue对象属性的问题

    追随了面向对象思想,使得实际操作变得方便,但是如果使用不当,将会面临着到处踩坑的危险,写这篇文章的目的是我遇到的这个问题在网上查了半天也没有发现解决方案,最终研究了vue的源码中有关select元素的部分找到...

    jQuery Select下拉框操作小结(推荐)

    jQuery获取Select元素,并选择的Text和Value: 1. $(“#select_id”).change(function(){//code…}); //为Select添加事件,当选择其中一项时触发 2. var checkText=$(“#select_id”).find(“option:selected”)....

    js 动态新增改变删除select的值

    Javascript 操作select是表单中常见的一种,今天删除多个select值的时候出现了问题,搞了半天原来是索引引起的(即删除的时候要从索引大的开始删, 然后再删除索引小的,否则删除了索引小的后索引大的索引就变化了...

    天涯易栈VC++网页操作类

    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~以下为网页组合框(Select)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ int GetSelectCount();//返回网页内所有组合框(Select)的数目 int GetSelectOptionCount(int i);//取...

    JQuery select标签操作代码段

    我们经常遇到要操作DOM元素,例如&lt;select&gt;,在Asp.net中Dropdownlist原型就是select。

    JavaScript实现向select下拉框中添加和删除元素的方法

    主要介绍了JavaScript实现向select下拉框中添加和删除元素的方法,涉及jQuery中append()与remove()方法动态操作表单元素的相关技巧,需要的朋友可以参考下

    jquery使用ul模拟select实现表单美化的方法

    主要介绍了jquery使用ul模拟select实现表单美化的方法,涉及jquery鼠标事件及页面元素样式的相关操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    在layui中select更改后生效的方法

    在layui中重新渲染表单这一步比较重要,部分表单元素...在每次操作部分表单元素后都进行一次调用 以上这篇在layui中select更改后生效的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支

Global site tag (gtag.js) - Google Analytics