大家好我在popupscrit.js文件中有这个方法:
function afficherMessageInfo( id, message) {
//Get the A tag
alert('executing the client code');
//Get the screen height and width
var maskHeight = $(document).height();
var maskWidth = $(window).width();
//Set heigth and width to mask to fill up the whole screen
$('#mask').css({'width':maskWidth,'height':maskHeight});
//transition effect
$('#mask').fadeIn(500);
$('#mask').fadeTo("slow",0.8);
//Get the window height and width
var winH = $(window).height();
var winW = $(window).width();
//Set the popup window to center
$(id).css('top', winH/2-$(id).height()/2);
$(id).css('left', winW/2-$(id).width()/2);
//transition effect
$(id).fadeIn(1000);
}
$('.window .close').live("click", function (event) {
//Cancel the link behavior
event.preventDefault();
$('#mask').hide();
$('.window').hide();
});
//if mask is clicked
$('#mask').live("click", function (event) {
$(this).hide();
$('.window').hide();
});
我想在c#按钮点击事件中显示一个弹出窗口,如下所示:
void BtnEnregistrer_btnClick(object sender, EventArgs e)
{
string id = "#info";
string messageInfo = "le dossier a été crée avec succès";
string script = String.Format("afficherMessageInfo({0},{1})", id, messageInfo);
this.Page.ClientScript.RegisterStartupScript(this.GetType(),
"afficherMessageInfo", script, true);
}
和html部分:
<script src="../Scripts/jquery.js" type="text/javascript"></script>
<script src="popupScript.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div id="boxes">
<!-- information -->
<div id="info" class="window" style="display:none;">
<div class="info_title">
<div class="pop_title">Information</div>
<div class="close_image"><a href="#"class="close"/><img src="images/popups/close.jpg" border="0" /></a></div>
</div>
<div class="pop_content">
<div class="pop_message">Etiam vel nisl ante. Mauris congue sodales risus ac cele risque Etiam vel nisl ante.Etiam vel nisl ante.</div>
<div align="right"><input name="" type="button" value="OK" class="info_bt"/></div>
</div>
</div>
<!-- Alerte -->
<div id="alerte" class="window" style="display:none;">
<div class="alerte_title">
<div class="pop_title">Alerte</div>
<div class="close_image"><a href="#"class="close"/><img src="images/popups/close.jpg" border="0" /></a></div>
</div>
<div class="pop_content">
<div class="pop_message">Etiam vel nisl ante. Mauris congue sodales risus ac cele risque Etiam vel nisl ante.Etiam vel nisl ante.</div>
<div align="right"><input name="" type="button" value="OK" class="alerte_bt"/></div>
</div>
</div>
<!-- validation -->
<div id="validation" class="window" style="display:none;">
<div class="validation_title">
<div class="pop_title">Validation</div>
<div class="close_image"><a href="#"class="close"/><img src="images/popups/close.jpg" border="0" /></a></div>
</div>
<div class="pop_content">
<div class="pop_message">Etiam vel nisl ante. Mauris congue sodales risus ac cele risque Etiam vel nisl ante.Etiam vel nisl ante.</div>
<div align="right"><input name="" type="button" value="Annuler" class="validation_bt"/> <input name="" type="button" value="OK" class="validation_bt"/></div>
</div>
</div>
<!-- confirmation -->
<div id="confirmation" class="window" style="display:none;">
<div class="confirmation_title">
<div class="pop_title">Demande de Confirmation</div>
<div class="close_image"><a href="#"class="close"/><img src="images/popups/close.jpg" border="0" /></a></div>
</div>
<div class="pop_content">
<div class="pop_message">Etiam vel nisl ante. Mauris congue sodales risus ac cele risque Etiam vel nisl ante.Etiam vel nisl ante.</div>
<div align="right"><input name="" type="button" value="Exemple 1" class="confirmation_bt"/> <input name="" type="button" value="Exemple 2" class="confirmation_bt"/> <input name="" type="button" value="Exemple 3" class="confirmation_bt"/> <input name="" type="button" value="Annuler" class="confirmation_bt"/> <input name="" type="button" value="OK" class="confirmation_bt"/></div>
</div>
</div>
<!-- Masque pour couvrir la page -->
<div id="mask"></div>
</div>
警告没有显示的是什么
答案 0 :(得分:1)
看起来您传递给javascript函数的参数缺少引号:
该行
string script = String.Format("afficherMessageInfo({0},{1})", id, messageInfo);
应该阅读
string script = String.Format("afficherMessageInfo('{0}','{1}')", id, messageInfo);
答案 1 :(得分:1)
在afficherMessageInfo()...
之后你缺少一个分号您是否尝试使用浏览器工具进行调试?
答案 2 :(得分:0)
删除true
函数调用中的RegisterStartupScript
参数,原因是它已经在<script></script>
块中确定已在您的标记中定义。
RegisterStartupScript
的重载不会导致include script block param
结束。
所以改变你的行:
this.Page.ClientScript.RegisterStartupScript(this.GetType(),
"afficherMessageInfo", script);
答案 3 :(得分:0)
为什么不添加OnClientClick
属性?
protected void Page_Load(object sender, EventArgs e)
{
string id = "#info";
string messageInfo = "le dossier a été crée avec succès";
BtnEnregistrer.OnClientClick = String.Format("afficherMessageInfo('{0}','{1}')", id, messageInfo);
}
此方法将禁止您使用PostBack
,并立即为您提供弹出窗口。
答案 4 :(得分:0)
// Round your values before using them since they can result in float.
// Also you have to implicitly add '.px' to them.
//Get the screen height and width
var maskHeight = $(document).height() + '.px';
var maskWidth = $(window).width() + '.px';
//Set heigth and width to mask to fill up the whole screen
$('#mask').css({
'width':maskWidth,
'height':maskHeight
});
var windowH = Math.round(winH/2-$(id).height()/2) + '.px';
var windowW = Math.round(winW/2-$(id).width()/2) + '.px';
$(id).css({
'top': windowH,
'left': windowW
});