繁体   English   中英

使用jQuery事件委托查找e.target时出错

[英]Error finding e.target using jQuery event delegation

我使用jQuery的事件代表团在此标记获得一个点击事件(EL包含多个checkboxContainer s,这就是为什么我想在事件委托.checkboxContainerel .The点击可能发生在.checkboxContainer或任何它的children ):

  <div class="checkboxContainer" id="equi-select">
     <span role="checkbox" class="checkboxSpan ">
        <div class="blankDiv" style="display: block;">
           <img class="blankImg" src="http://maps.gstatic.com/mapfiles/mv/imgs8.png">
        </div>
       </span>
       <label class="checkboxLabel">Equipment</label>
  </div>

这是我的jQuery代码:

 el.on("click",".checkboxContainer",function(e){
    var $parent;
    if($(e.target).hasClass(".checkboxContainer"))
        $parent=$(e.target);
    else
        $parent=$(e.target).parents(".checkboxContainer").eq(0);
    var res=$parent.attr("id");
    var objtype=res.substring(0,4);//error here
    var $blankDiv=$parent.find(".blankDiv");
    console.log($blankDiv.css("display"));
    if($blankDiv.css("display")==="none")
    {
        console.log(objtype);
        $blankDiv.css("display","block");
        //make ajax requests to get data from server
     }
     else
        $blankDiv.css("display","block");
 });

这是错误:

Uncaught TypeError: Cannot read property 'substring' of undefined

如何改善活动的针对性?

将toString()方法添加到要添加的行中

var res=$parent.attr("id").toString();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM