[英]Bootstrap modal popup with page without page refresh
我正在使用C#在ASP.Net中開發應用程序。 在我的頁面中,我正在使用JQuery和bootstrap進行模式彈出窗口顯示。 我已經采取了一些HTML按鈕來顯示彈出窗口。 但是我面臨顯示模式彈出窗口的問題。 當我單擊按鈕時,將顯示模式彈出窗口,並且頁面正在刷新。 我不知道為什么頁面會刷新。 據我所知,JQuery在客戶端工作。
請查看以下按鈕代碼。
<a id="editPhoto" class="btn btn-primary btn-sm" onclick="gen_all_es()" style="width:100%; margin-bottom:5px;" href="jcorp.aspx?paramControl=imagePhoto&responsePage=DesignCenter_Static.aspx&templateName=5">Add / Modify Photo</a>
<button id="editDesignation1" class="btn btn-primary btn-sm" style="width:100%; margin-bottom:5px;" data-target="#selectDesignation1_Modal" data-toggle="modal">Select Designation 1</button>
<button id="editDesignation2" class="btn btn-primary btn-sm" style="width:100%; margin-bottom:5px;" data-target="#selectDesignation2_Modal" data-toggle="modal">Select Designation 2</button>
<button id="editUploadLogo" class="btn btn-primary btn-sm" style="width:100%; margin-bottom:5px;" data-target="#selectLogo_Modal" data-toggle="modal">Select & Upload Logo</button>
請幫忙。
請參閱此網站以獲取模型彈出窗口
http://www.codeproject.com/Articles/589445/JavaScript-Modal-Popup-Window
還要檢查此代碼是否符合您的要求
頁面JavaScript:
function myPop() {
this.square = null;
this.overdiv = null;
this.popOut = function(msgtxt) {
//filter:alpha(opacity=25);-moz-opacity:.25;opacity:.25;
this.overdiv = document.createElement("div");
this.overdiv.className = "overdiv";
this.square = document.createElement("div");
this.square.className = "square";
this.square.Code = this;
var msg = document.createElement("div");
msg.className = "msg";
msg.innerHTML = msgtxt;
this.square.appendChild(msg);
var closebtn = document.createElement("button");
closebtn.onclick = function() {
this.parentNode.Code.popIn();
}
closebtn.innerHTML = "Close";
this.square.appendChild(closebtn);
document.body.appendChild(this.overdiv);
document.body.appendChild(this.square);
}
this.popIn = function() {
if (this.square != null) {
document.body.removeChild(this.square);
this.square = null;
}
if (this.overdiv != null) {
document.body.removeChild(this.overdiv);
this.overdiv = null;
}
}
}
現在使用JavaScript文件的HTML頁面:
<html>
<head>
<script type="text/javascript" src="NAME OF THE PAGE!.js"></script>
<style>
div.overdiv { filter: alpha(opacity=75);
-moz-opacity: .75;
opacity: .75;
background-color: #c0c0c0;
position: absolute;
top: 0px;
left: 0px;
width: 100%; height: 100%; }
div.square { position: absolute;
top: 200px;
left: 200px;
background-color: Menu;
border: #f9f9f9;
height: 200px;
width: 300px; }
div.square div.msg { color: #3e6bc2;
font-size: 15px;
padding: 15px; }
</style>
</head>
<body>
<div style="background-color: red; width: 200px; height: 300px;
padding: 20px; margin: 20px;"></div>
<script type="text/javascript">
var pop = new myPop();
pop.popOut("Test");
</script>
</body>
</html>
這可能是由於editPhoto a
標簽上的href導致網址刷新
更改您的gen_all_es()
函數以在事件上使用preventDefault
的HTML:
<a id="editPhoto" class="btn btn-primary btn-sm" onclick="gen_all_es(event)" style="width:100%; margin-bottom:5px;" href="jcorp.aspx?paramControl=imagePhoto&responsePage=DesignCenter_Static.aspx&templateName=5">Add / Modify Photo</a>
javascript:
function gen_all_es(e) {
e.preventDefault();
// your code
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.