阻止事件冒泡:event.stopPropagation();

标签中如果有多个事件

 

<div name="feeContractCode"  field="feeContractCode" headerAlign="center" align="center" 
                renderer="_emsEcFeeItem.feeContractCodeRenderer" >
	                <ilang:i18nStr code='合同编号' />
	                <input property="editor"  class="sui-buttonedit form-control"         
                    showClose="true" 
	                allowInput="fasle"  onbuttonclick="_emsEcFeeItem.changeContract" />
</div>

div中的renderer事件:

/*预算明细 - 费用申请单号 - 渲染事件*/
    feeContractCodeRenderer: function (e) {
        var row = e.record;
        if (row.feeContractCode) {
//        	return "<input id=\"feeContractCode\" class=\"sui-buttonedit form-control\" showClose=\"true\" allowInput=\"fasle\" oncloseclick=\"_emsEcFeeItem.onCloseClick\" onbuttonclick=\"_emsEcFeeItem.changeContract\" />"
        	return "<a id=\"contractId\"  class=\"sui-buttonedit\" style=\"width:55%;height:85%;\" onclick=\"_emsEcFeeItem.queryContract()\">" + row.feeContractCode + "</a> "	
//            return "<a href=\"#\" onclick=\"processCommon.openInfoByBusiness(" + row.feeApplyId + ",'EA')" + "\" >" + e.value + "</a>";
        } else {
//        	<input id=\"feeContractCode\" property=\"editor\" style=\"width:30%;height:100%;\"class=\"sui-buttonedit\" showClose=\"true\" allowInput=\"fasle\" + oncloseclick=\"_emsEcFeeItem.onCloseClick\" onbuttonclick=\"_emsEcFeeItem.changeContract\" />
//        	return "<input id=\"feeContractCode\" class=\"sui-buttonedit form-control\" showClose=\"true\" allowInput=\"fasle\" oncloseclick=\"_emsEcFeeItem.onCloseClick\" onbuttonclick=\"_emsEcFeeItem.changeContract\" />"
        	return "<a id=\"contractId\"  class=\"sui-buttonedit\" style=\"width:55%;height:85%;\" onclick=\"_emsEcFeeItem.queryContract()\"></a> "	
//            return row.feeContractCode;
        }
    },

这里手动拼接了一个<a>标签;标签中有onbuttonclick(点击事件这里用的是miniUI)

div中也可以看到有onbuttonclick;拼接的<a>标签中也有onbuttonclick

其实是两个事件

 div点击事件会跳出弹窗

 input点击事件

 问题:跳出弹窗会触发input点击事件会触发

弹窗中会多出来input框白色的,而且在弹窗上层显示,不美观

防止触发其他事件(阻止事件冒泡):

在执行方法上事件函数中添加下面这行js代码

event.stopPropagation();

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值