如何指定javascript运行时ModalPopupExtender示
-
08-06-2019 - |
题
的ASP.NET 阿贾克斯 ModalPopupExtender 已 OnCancelScript
和 OnOkScript
性质,但这似乎并没有一个 OnShowScript
财产。我想要指定一个javascript功能运行每一个时间的弹出窗口所示。
在过去的情况下,我设置的 TargetControlID
对一个虚拟的控制,并提供我自己的控制,先做一些JS代码,然后使用JS方法,显示的弹出窗口。但在这种情况下,我表示的弹出窗口两者的客户和服务器方的代码。
任何人都知道的一种方式来这样做吗?
顺便说一句,我需要这个,因为我有一个文本中的模式,我想要做介绍的编辑。但命令init脚本上不起作用无形的文本框,所以我不得不找到一种方式来运行它的时候模式显示
解决方案
嗯...我 很确定 这有一所示的事件茂金属聚乙烯...这是关闭我的头顶,但我认为你可以添加一个事件处理程序的事件所示上page_load
function pageLoad()
{
var popup = $find('ModalPopupClientID');
popup.add_shown(SetFocus);
}
function SetFocus()
{
$get('TriggerClientId').focus();
}
我不确定。如果这会帮助你呼叫它从服务器的一侧。
其他提示
这里有一个简单的方法来做标记:
<ajaxToolkit:ModalPopupExtender
ID="ModalPopupExtender2" runat="server"
TargetControlID="lnk_OpenGame"
PopupControlID="Panel1"
BehaviorID="SilverPracticeBehaviorID" >
<Animations>
<OnShown>
<ScriptAction Script="InitializeGame();" />
</OnShown>
</Animations>
</ajaxToolkit:ModalPopupExtender>
你应该使用 BehaviorID 值 mpeBID
你ModalPopupExtender.
function pageLoad() {
$find('mpeBID').add_shown(HideMediaPlayer);
}
function HideMediaPlayer() {
var divMovie = $get('<%=divMovie.ClientID%>');
divMovie.style.display = "none";
}
如果您使用的是一个按钮或超链接或者什么触发的弹出窗口显示,你能不能也添加一个附加处理击事件所触发,它应当仍然火的模式弹出和运行javascript在同一时间?
该ModalPopupExtender修改的按钮/超链接,你告诉它的"触发"单元。这击脚本我加入触发之前弹出示。我想脚本以火灾后的弹出窗口所示。
此外,仍然离开我的问题时,我显示的模式从服务器的一侧。
介绍工作看不见的文本如果你隐藏它与css(显示:无;) 你让一个"击"事件在TargetControlID,init命令,如果使用也updatepanel
两个模式的形式:
var launch = false;
var NameObject = '';
function launchModal(ModalPopupExtender) {
launch = true;
NameObject = ModalPopupExtender;
}
function pageLoad() {
if (launch) {
var ModalObject = $find(NameObject);
ModalObject.show();
ModalObject.add_shown(SetFocus);
}
}
function SetFocus() {
$get('TriggerClientId').focus();
}
服务器的一面:behand
protected void btnNuevo_Click(object sender, EventArgs e)
{
//Para recuperar el formulario modal desde el lado del sercidor
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", "<script>launchModal('" + ModalPopupExtender_Factura.ID.ToString() + "');</script>", false);
}
var launch = false;
function launchModal() {
launch = true;
}
function pageLoad() {
if (launch) {
var ModalPedimento = $find('ModalPopupExtender_Pedimento');
ModalPedimento.show();
ModalPedimento.add_shown(SetFocus);
}
}
function SetFocus() {
$get('TriggerClientId').focus();
}