3

ここで、ポストバック後にiframeの高さを増やそうとしていますが、機能せず、アラート自体がポップアップしません.Hereは私のコードです

function increaseiframesize() {
alert("aaaaaa");
$('#MainContent_IFTrendAnalysis').height('523');
}   

protected void lnkBTNSubmit_Click(object sender, EventArgs e
{
TextBox txtTextBoxRetailGroup   = (TextBox)uscRetailParameters.FindControl("txtRetailCustomerGroup");
TextBox txtTextBoxPPGroup       = (TextBox)uscRetailParameters.FindControl("txtProductGroup");
if (txtTextBoxRetailGroup.Text != string.Empty && txtTextBoxPPGroup.Text != string.Empty && txtATrendStartDate.Text != string.Empty && txtATrendEndDate.Text != string.Empty)
{
this.IFTrendAnalysis.Attributes.Add("src", "");
ScriptManager.RegisterStartupScript(this, this.GetType(), "ScriptRegistration", "increaseiframesize();", true);
}
}

<asp:UpdatePanel ID="Update" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<iframe id="IFTrendAnalysis" name="IFTrendAnalysis" scrolling="auto" runat="server"
width="100%" height="403" frameborder="0"></iframe>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="imgBTNSalesTrendChart" />
<asp:AsyncPostBackTrigger ControlID="imgBTNSalesLiftChart" />
<asp:AsyncPostBackTrigger ControlID="lnkBTNSubmit" />
<asp:AsyncPostBackTrigger ControlID="imgBTNSalesLiftChart" />
<asp:AsyncPostBackTrigger ControlID="imgBTNTAEventROI" />
<asp:AsyncPostBackTrigger ControlID="imgBTNTrendAnalyzeTBL" />
</Triggers>
</asp:UpdatePanel>

なにか提案を???

4

1 に答える 1

2

ajaxリクエストが送信されて完了し、制御がブラウザに戻った後にメソッドを呼び出そうとしていると思います。フォームのオンロードを実行するはずの JavaScript が ajax all に対して実行されません。それがajax呼び出しの場合は、これを行います

endRequest イベントを JavaScript に登録する

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler)

ここでメソッドを呼び出します

function EndRequestHandler(sender, args)
{
    increaseiframesize();
}
于 2012-04-25T07:26:50.247 に答える