<
script
type
="text/javascript"
>
function
DelSelectedRows()
{
Ext.MessageBox.confirm(
'
提示
'
,
'
是否要删除这些记录
'
,
function
(btn)
{
if
(btn
==
"
yes
"
)
{
Coolite.AjaxMethods.DeleteSelectedWorkFlow();
}
});
}
function
DelSelected(selectedID)
{
Ext.MessageBox.confirm(
'
提示
'
,
'
是否要删除此记录
'
,
function
(btn)
{
if
(btn
==
"
yes
"
)
{
Coolite.AjaxMethods.DeleteWorkFlow(selectedID);
}
});
}
</
script
>
<
ext:Button
ID
="btnDelete"
runat
="server"
Text
="删除选中"
Icon
="Delete"
>
<
Listeners
>
<
Click
Fn
="DelSelectedRows"
/>
</
Listeners
>
</
ext:Button
>
GridPanel中。。
<
Listeners
>
<
Command
Handler
="if (command=='Edit'){Coolite.AjaxMethods.EditWorkFlow(record.data.WFWorkFlowID);}else if(command='Delete'){DelSelected(record.data.WFWorkFlowID);}"
/>
</
Listeners
>
<
SelectionModel
>
<
ext:RowSelectionModel
ID
="RowSelectionModel1"
runat
="server"
/>
</
SelectionModel
>
5.
Coolite的Combobox的setValue和setRawValue
Coolite的Javascript代码中的
Combobox的setValue(record.data['DesktopModuleID']);
将会使SelectedItem的Text和Value都变成
record.data['DesktopModuleID']
所以调用之后应该调用次
Combobox的setRawValue(record.data['FriendlyName']);
会改变Text的值为想显示的,SetRawValue一定要在SetValue之后调用
如以下代码
Code
var selectDesktopModule = function (selectionModel , rowIndex, record) {
<%= DesktopModuleWindow.ClientID %>.hide(null);
hidCtrl.setValue(record.data['DesktopModuleID']);
hidCtrl.setRawValue(record.data['FriendlyName']);
hidCtrl.triggers[0].show();
}
6.关于Coolite的AjaxMetod在MasterPage或者CMS系统下使用问题
在UserControl(ascx),MasterPage或者Page(aspx)中使用Coolite的AjaxMetod讲究是不同的
在MasterPage中或者你在类似DotNetNuke的系统中调用AjaxMetod标志的方法,默认情况下是会找不到方法的,
处理此类问题需要使用AjaxMethodProxyID,使用的方法是在类的前面加上,如下
[AjaxMethodProxyID(IDMode = AjaxMethodProxyIDMode.None)]
partial class ModuleRightManager : PortalModuleBase
我们先看一下几种AjaxMethodProxyID 的区别
1. None - 命名前缀是空的,调用方法时直接使用 Coolite.AjaxMethods.ajaxMethod(...)
2. ClientID - 命名前缀需要加上当前类控件的client id(客户端前缀)
如Coolite.AjaxMethods.ctl00_UC1.ajaxMethod
当然通常情况下我们Coolite.AjaxMethods.<%=this.ClientID>.ajaxMethod(...)
3. ID - 使用当前控件ID作为前缀, Coolite.AjaxMethods.UC1.ajaxMethod(...)
4. Alias - 使用别名做前缀,你可以声明自己的一个别名, Coolite.AjaxMethods.myAlias.ajaxMethod(...)
5. AliasPlusID - 别名和ID同时使用,如 Coolite.AjaxMethods.myAliasUC1.ajaxMethod(...)
在有MasterPage页面或者在类似DotNetNuke的CMS系统下使用Coolite的AJAXMethod,建议你在页面的前部加上
[AjaxMethodProxyID(IDMode
=
AjaxMethodProxyIDMode.ClientID)]
public
partial
class
PopupCustomerDetail : PortalModuleBase
原文:http://hi.baidu.com/xy4mm/blog/item/b46afc54e81c42163b293585.html