zoukankan      html  css  js  c++  java
  • target事件属性

    获取下拉框值

    1、此种方法无法在页面获取到下拉框值

    <th field="CLTZDYMC" data-options="formatter: function(value,row,index){return row.CLTZDYMC}"
    editor="{type:'combobox',
      options:{
          valueField:'CLTZDYMC',
          textField:'CLTZDYMC',
          url:'common_getCltzdymcJson.action',
          panelHeight:'350',
          onChange:function(newValue,oldVlue){
          var testTmp = $(this).parents('.datagrid-row-editing');
          var parentDom = testTmp.parents('.datagrid-view');
          var childDom1 = parentDom.children('div.datagrid-view2');
          var childDom2 = childDom1.find('tr.datagrid-row-editing');
          var tmpCltzdymc = testTmp.children('td[field=CLTZDYMC]');
          var tmpFsclms = testTmp.children('td[field=FSCLMS]');
            $.ajax({
              url:'common_getFsclmsJson.action?newVal='+encodeURI(encodeURI(newValue)),
              async:true,
              method:'post',
              success:function(r){
                var jsonobj = eval(r);
                (childDom2.children('td[field=FSCLMS]').find('div.datagrid-cell')).html(jsonobj[0].FSMS);
              }
            });
          }
        }
    }"
    width="250" align="center" rowspan="2">
    刺漏台账对应名称
    </th>

    2、最后通过target事件获取到了此下拉框值

    function editInfo(index){
      editorRow=index;
      var row = $('#dg').datagrid('getSelected');//先获取到当前选中行
      var rindex = $('#dg').datagrid('getRowIndex', row);//根据当前行获取,当前行的下标
      $('#dg').datagrid('cancelEdit', rindex);
      $('#dg').datagrid('selectRow', index);
      $('#dg').datagrid('updateRow', {
        index: index,
        row: {
          CZ: ""
        }
      });
      $('#dg').datagrid('beginEdit', index);

      var ed = $('#dg').datagrid('getEditor', { index: index, field: 'FCLYS' });
      $(ed.target).bind('change', function () {
      var editor = $('#dg').datagrid('getEditor', {index:index,field:'CLTZDYMC'});
      var editor2 = $('#dg').datagrid('getEditor', {index:index,field:'FCLYS'});
      var cltzdymcVal = $(editor.target).combobox('getValue');
      var fclysVal = $(editor2.target).val();
      if((cltzdymcVal!=null && ""!=cltzdymcVal) && (fclysVal!=null && ""!=fclysVal)){
         $(editor2.target).val(fclysVal+"<a href='#' title='请确认刺漏台账对应名称与腐蚀刺漏因素是否有误!' class='easyui-tooltip'><img border='0'                                                   src='${pageContext.request.contextPath}/gxgl/images/warning.jpg'/></a>");
      }else{
        $(editor2.target).val(fclysVal);
      }
      });

    }

    =======target=======================================================================================================

    target 事件属性可返回事件的目标节点(触发该事件的节点),如生成事件的元素、文档或窗口。

    target需要通过形参event才能拿到对象,this则通过类名或者id就能拿到当前触发函数对象

    event.target与this的区别:

      event.target表示发生点击事件的元素;

      this表示的注册点击事件的元素;

      this是所有函数原生具有的。进入函数事,this已经直接有了目标对象。

      而e.target通过e在寻找target,中转了一下。所以相比较而言,this的执行效率更高些。

    <div><img src="……"></div>

    <script>

      $('div').click(function(){

        e.target表示事件触发元素这里会是img

        this 始终指向绑定事件的元素也就是div

      });

    </script>

    =======currentTarget================================================================================================

    currentTarget 事件属性返回其监听器触发事件的节点,即当前处理该事件的元素、文档或窗口。

    捕获起泡阶段,该属性是非常有用的,因为在这两个节点,它不同于 target 属性。

    捕获、冒泡------->详解http://www.cnblogs.com/hh54188/archive/2012/04/09/2343357.html

  • 相关阅读:
    vue中v-slot使用
    Angular服务
    Angular的使用
    Angular介绍
    缓存组件
    mvvm和mvc的区别
    vue项目优化
    windows环境安装和使用curl与ES交互
    Java自定义注解
    ajax异步请求后台数据处理
  • 原文地址:https://www.cnblogs.com/0914lx/p/7049992.html
Copyright © 2011-2022 走看看