JS动态生成元素鼠标响应方法 .live()

 

jQuery在动态生成HTML元素后,如果该元素集合中有鼠标点击CLICK事件,这时点击无响应,需要用到.live()方法使生成的动态元素依然保持页面装载后的效果,使鼠标点击事件生效.

jQuery(document).ready(function(){
 var contentTR=$('.info tr:eq(0)').html();
 var e=0;
    $('.addrow').click(function(){
  e=e+1;
  
        $(".info .addrow").parent().parent().before('<tr>' + contentTR + '</tr>');
  $(".info tr:eq("+e+")").find("input:eq(0)").attr("name","a"+e);
  $(".info tr:eq("+e+")").find("input:eq(1)").attr("name","b"+e);
  $(".info tr:eq("+e+")").find("select:eq(0)").attr("name","c"+e);
  $(".info tr:eq("+e+")").find("input:eq(2)").attr("name","d"+e);
  $(".info tr:eq("+e+")").find("input:eq(3)").attr("name","f"+e);
  
  });
  $('.del').live('click',function(){
            $(this).parent().parent().remove();
                });
        });

js 字符串转 对象

eval("("+ $data.buttons +")")

就这样…

在用dialog的时候buttons的参数是obj找了半天 原因是从php传过来的参数是string格式的

不是插件要求的格式,尼玛坑爹啊 不知道做个格式判断 - =…

尼玛 select选择后部触发change的原因

        尼玛坑爹啊!!!~~

        就是那么简单,第二次遇到尽然让我困扰了2次,WTF!!!!!

在做 gvms opreation的时候我们把 panel的框体隐藏起来,display="none" 然后通过id获取全部的html

之后在点击action按钮后将id内的内容用js连接符'+'放到一起在需要的位置展现出来

        

        而这个时候我们是通过select去选择不同的channel展示不同输入框的

        当触发 $("#transfer_action").change的时候触发不了,原因是应为这个时候html里存在2个id为transfer_action的元素,所以导致change不触发。以后再用这种方式写控制的时候一定要记得remove掉之前的内容…

   

$transfer_action_form = $('#transfer_action_form').find('table').tr_level('even').end();
$("#transfer_action_form").remove();