首页 > 代码库 > target事件属性
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=http://www.mamicode.com/‘#‘ title=‘请确认刺漏台账对应名称与腐蚀刺漏因素是否有误!‘ class=‘easyui-tooltip‘>");
}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="http://www.mamicode.com/……"></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
target事件属性