2013-5-11 近日javascript小结

本文深入探讨了使用jQuery处理DOM元素时遇到的问题,包括jQuery不支持某些DOM方法、绑定事件需要返回值、以及删除并重新生成DOM元素后事件失效的情况,并提供了相应的解决策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、Jquery不支持select..options.add方法

   function myModalEvent(){
       var workflow_id=$("#workflow_id").val();
       $("#workflowDiv").html($("#modalContent").html());
       $("#myModal").modal('hide');
       $("#modalDiv").remove();
       $('#workflow_id  option[value='+workflow_id+']').attr("selected","selected");
        document.getElementById("transition_id").options.add(new Option("text","value"));
          $(".modal-backdrop").remove();//
        return false;//词句必须,否则firefox报错
} 


$("#myModal .modal-footer .btnEvent").click(myModalEvent);

二、绑定事件需要返回值

$("#selectObj").select.options.add("text","value");
//以上报错,提示不存在options
//以下正确:
document.getElementById("selectObj").options.add(new Option("text","value"));

三、删除后再生成的对象绑定的事件已绑定的时间会失效,需重新绑定。


<script type="text/javascript"> 
   function myModalEvent(){
       var workflow_id=$("#workflow_id").val();
       $("#workflowDiv").html($("#modalContent").html());
       $("#myModal").modal('hide');
       $("#modalDiv").remove();
       $('#workflow_id  option[value='+workflow_id+']').attr("selected","selected");
       $("#workflow_id").change( //此处必须,否则,重新生成的 select控件变化时将不在弹出消息。
        function(){alert($("#workflow_id").val());}
          //function(){if($("#workflow_id").val()=='0') alert('请选择工作流');}
         //
      );
        document.getElementById("transition_id").options.add(new Option("text","value"));
          $(".modal-backdrop").remove();//
        return false;
    }
    $(function(){
      $("#submit").click(function(){
          commonAjaxSubmit("__SELF__","form","submit");//in functions.js  
          return false;
      });
      workflow_id=0{$Think.get.workflow_id} ;
      if(workflow_id>0){
        $('#workflow_id  option[value='+workflow_id+']').attr("selected","selected");
      }
      <if condition="!$_GET['workflow_id']"> 
        id=$(this).attr("tid");
        url=$(this).attr("url");
        tname=$(this).attr("tname");
        args=new Array();
        args['type']='warning';
        args['modalType']='confirm';
        args['title']='请指定工作流'
        args['btnEventText']='OK';
        args['removeBtnOk']=true;
        //args['content']='<h3>请指定工作流!</h3>';
        args['content']='';
        args['content']= args['content']+$("#workflowDiv").html();
        $("#workflowDiv").html("");
        bootstrapModalX(args);
      </if>

      $("#workflow_id").change(
        //function(){alert($("#workflow_id").val());}
          function(){if($("#workflow_id").val()=='0') alert('请选择工作流');}
         //
      );
   });
</script>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值