Bug No.1:
描述:将botton作为updatepanel的一个异步trigger的话,updateprogress的内容就不会显示,如果包含在updatepanel的contenttemplate中的话,显示正常。
解决办法:在页面的<toolkitscriptmanager></>后面,增加一段js代码,代码如下
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
var postBackElement;
function InitializeRequest(sender, args)
{
if (prm.get_isInAsyncPostBack())
args.set_cancel(true);
postBackElement = args.get_postBackElement();if (postBackElement.id == 'Button1')
$get('UpdateProgress1').style.display = 'block';
}
function EndRequest(sender, args)
{
if (postBackElement.id == 'Button1')
$get('UpdateProgress1').style.display = 'none';
}
Bug No.2:
描述:RadioButtonList中有2个item,并且其中一个定义为 Selected="True", 则发现将它作为异步trigger时,updatepanel中的内容只发生变化一次。将所有控件放入updatepanel时情况正常
解决办法:在后台中增加一下代码
this.radlType.PreRender += new EventHandler(radlType_PreRender);
void radlType_PreRender(object sender, EventArgs e)
{
radlType.Items[0].Attributes.Add("onclick", "setTimeout('__doPostBack(//radlType$0//',//'//')', 0)");
}