【发布时间】:2011-07-20 21:54:03
【问题描述】:
我有以下代码:
functions.js =>
function loadPopup() {
$("#backgroundPopup").css({
"opacity": "0.7"
});
$("#backgroundPopup").fadeIn("slow");
$("#popupContact").fadeIn("slow");
}
//disabling popup with jQuery magic!
function disablePopup() {
$("#backgroundPopup").fadeOut("slow");
$("#popupContact").fadeOut("slow");
}
//centering popup
function centerPopup() {
//request data for centering
var windowWidth = document.documentElement.clientWidth;
var windowHeight = document.documentElement.clientHeight;
var popupHeight = $("#popupContact").height();
var popupWidth = $("#popupContact").width();
//centering
$("#popupContact").css({
"position": "absolute",
"top": windowHeight / 2 - popupHeight / 2,
"left": windowWidth / 2 - popupWidth / 2
});
//only need force for IE6
$("#backgroundPopup").css({
"height": windowHeight
});
}
function no() {
return false;
disablePopup();
}
function yea() {
$('#form1').submit(function () {
return true;
})
}
$(function () {
$("#popupContactClose").bind('click', function () {
disablePopup();
});
});
function yeah() {
$(this).bind('click', function (event) {
centerPopup();
loadPopup();
});
}
...以及以下标记:
<body>
<form id="form1" runat="server">
<asp:Button ID="btn1" runat="server" OnClientClick="yeah();" Text="Click me!" />
<div id="popupContact">
<a onclick="xClick()" id="popupContactClose">x</a>
<input type="submit" onclick="yea()" value="Yes" />
<input type="button" onclick="no()" value="No" />
</div>
<div id="backgroundPopup">
</div>
</form>
</body>
</html>
问题是 OnClientClick 事件调用 yea(),div 出现然后立即消失,页面回发。这很奇怪。你能帮我解决这个问题吗?提前致谢!
【问题讨论】: