我有一个案例,我需要根据用户是否正在编辑或添加来提供不同的源 ID。我最初的想法是使用 beforeShowForm 钩子设置隐藏字段的值,但似乎组件在调用钩子函数之前被初始化。因此,我无法确定在初始化的那个阶段正在创建什么模型。
[一个]
//initLoadNoEdit gets called... (At this point I need to know if its going to be an add/edit.)
initLoadNoEdit = function (elem) {
if ($('#curr_action').val() == 'add') {
createLoadNumberWidget(elem, "#Date", 'some_url');
} else {
createLoadNumberWidget(elem, "#modal_date", 'some_url');
}
}
var colModel = [
{ name: 'FI_ID', index: 'FI_ID', key: true, editable: false, hidden: true, search: false },
{ name: 'LILBP_ID', index: 'LILBP_ID', editrules: { required: true }, editoptions: { dataInit: initLoadNoEdit } }
];
//...before this gets called
var addBeforeShowOptions = function (form) {
$('#curr_action').val('add');
}
//...or this
var editBeforeShowOptions = function (form) {
$('#curr_action').val('edit');
}
然后我尝试在网格的按钮添加/编辑单击上添加一个单击事件,我尝试了 .live()、.delegate() 和一个普通的 .click()。但没有结果,寻呼机呈现如下..
[乙]
<td id="pager_left" align="left">
<table cellspacing="0" cellpadding="0" border="0" class="ui-pg-table navtable" style="float:left;table-layout:auto;">
<tbody>
<tr>
<td class="ui-pg-button ui-corner-all" title="Add new row" id="add_theGrid">
<div class="ui-pg-div">
<span class="ui-icon ui-icon-plus"></span>
</div>
</td>
</tr>
</tbody>
</table>
</td>
所以我尝试了类似的东西
$('#add_theGrid').live('click', function () { $('#curr_action').val('add'); });
//and
$('#pager_left').delegate('#add_theGrid','click', function () { $('#curr_action').val('add'); });
话虽这么说...我不认为将值传递给变量是解决此问题的最佳方法,因为我确信我应该有一种方法可以从模态中确定它是什么类型的模态是?我只是还没有找到它。。