jsp + js + 前端彈出框


在項目中,前端頁面我們時常需要各種各樣的彈出框:

1、alert對話框:顯示含有給定消息的"JavaScript Alert"對話框

代碼:

var a = "HelloWorld";
alert("對話框內容:" + a);

效果:

 2、confirm對話框:顯示含有給定消息的"Confirm"對話框(有一個OK按鈕和一個Cancel按鈕).如果用戶單擊OK返回true,否則返回false

代碼:

var a = "是否提交?";
var result = confirm("提示:" + a);
alert("返回結果:" + result);

效果:

3、prompt對話框:顯示一個"prompt"對話框,要求用戶根據顯示消息給予相應輸入

//這里需要注意的是,prompt有兩個參數,前面是提示的話,后面是當對話框出來后,在對話框里的默認值
var name=prompt("請輸入您的名字","");    
if(name !="" && name != null){
    alert("歡迎你," + name);
}

效果:

4、open:打開一個新窗口,給予一個指定的名字

代碼:

//open("URL","name")
open("promptBox.jsp","promptBox");

5、close:關閉當前窗口

代碼:

close() ;

 6、使用div和Jquery來展示:可以像模態框一樣

注意:需要引入Jquery的相關庫,本人引入的分別為:

<script src="PublicFile/Jquery/jquery-1.7.1.js"></script>
<script src="PublicFile/Jquery/jquery-ui.js"></script>
<link href="PublicFile/Jquery/jquery-ui.css" media="screen" rel="stylesheet" type="text/css"></link>
代碼:

//jsp頁面:
<div id="my_dialog" title="新建文件" style="display: none">
        <form>
            <p>
                文件名:<input type="text" id="fileName" />
            </p>
            <p>&nbsp;&nbsp;&nbsp;型:<select id="fileType">
                    <option value="txt">TXT</option>
                    <option value="doc">World</option>
                    <option value="pdf">PPT</option>
                    <option value="xls">Excel</option>
                </select>
            </p>
            <p>&nbsp;&nbsp;&nbsp;注:<input type="text" id="Remarks" />
            </p>
            <div style="float: right;">
                <button class="my-btn-gray" OnClick="Cancel()">取消</button>
                <button class="my-btn-blue" OnClick="confirm()">確認</button>
            </div>
        </form>
    </div>

    <div>
        <button onclick="NewFile();">點擊me</button>
    </div>

//js中方法
//顯示新建文件提示頁
    function NewFile() {
        $('#my_dialog').dialog({
            modal : true,
            width : "400",
            height : "230"
        });
        document.getElementById("my_dialog").style.display = "block";
    };
    //新建文件確認
    function confirm() {
        $('#my_dialog').dialog("close");
        var fileName = document.getElementById("fileName").value; //文件名
        var fileType = document.getElementById("fileType").value; //文件類型
        var Remarks = document.getElementById("Remarks").value; //備注
        alert("fileName:" + fileName + " fileType:" + fileType + " Remarks:" + Remarks);
    };

    //新建文件取消
    function Cancel() {
        $("#fileName").val("");
        $("#Remarks").val("");
        $("#fileType").empty();
        var ops = {
            "txt" : "TXT",
            "doc" : "World",
            "pdf" : "PPT",
            "xls" : "Excel"
        };
        var parent = document.getElementById("fileType");
        for ( var key in ops) {
            var o = new Option(ops[key], key);
            parent.appendChild(o);
        }
        sessionStorage.setItem("orderMergeStr", '');
        $('#my_dialog').dialog("close");
    };

效果:

 

參考:https://blog.csdn.net/diyinqian/article/details/83691464

注意:jquery ui dialog 右上角怎么沒有顯示關閉按鈕

需要關閉按鈕相關的圖片,並且放入到對應的路徑才行,具體如下:

需要在jQuery.ui.css同級目錄下,建立images文件夾並且把jQuery中的圖片放入進去即可。

7、使用Jquery中的fancyBox來顯示

注意:需要引入Jquery的相關庫,本人引入的分別為:

<script src="PublicFile/Jquery/jquery-1.7.1.js"></script>
<script src="PublicFile/Jquery/jquery.fancybox-1.3.4.pack.js"></script>
<script src="PublicFile/Jquery/jquery.fancybox-1.3.4.js"></script>
<link href="PublicFile/Jquery/jquery.fancybox-1.3.4.css" media="screen" rel="stylesheet" type="text/css"></link>
代碼:

//index.jsp
<div>
    <button id="fancybox" >點擊me</button>
</div>
//js
$(document).ready(function() {
        $("#fancybox").fancybox({
            'href' : 'promptBox.jsp',//此處為顯示頁面URL
            'width' : 900,
            'height' : 600,
            'type' : 'iframe',
            'hideOnOverlayClick' : false,
            'showCloseButton' : false,
            'onClosed' : function() {
                window.location.href = 'index.jsp';
            }
        });
    });
//promptBox.jsp
<p>你好,這是fancyBox顯示的頁面,里面可以實現很多功能哦,表單提交、信息展示、提示框等等。。。</p>
    <a href="javascript:parent.$.fancybox.close();">點擊me,關閉此頁面</a>

效果:

8、dialog使用

<!-- 基礎類庫 -->
<SCRIPT type="text/javascript" src="js/jquery-1.4.4.min.js"></SCRIPT>
<!-- 布局的基本類庫(不涉及到布局不需要)-->
<SCRIPT type="text/javascript" src="js/jquery.layout.js"></SCRIPT>
<!-- ui的樣式表 -->
<link type="text/css" href="css/redmond/jquery-ui-1.8.9.custom.css" rel="stylesheet" />
<!-- ui的類庫 -->    
<script type="text/javascript" src="js/jquery-ui-1.8.9.custom.min.js"></script>
<SCRIPT type="text/javascript">
$(document).ready(function () {
        //制定某個div的id 將其作為 Dialog            
        $('#helpdialog').dialog({
                    //是否創建就打開對話框,也就是是否頁面一打開就顯示對話框
                    autoOpen: false,
                    
                    /*是否需要解決無法覆蓋IE6 select 元素無法被覆蓋的bug
                    就是在IE6下  div無法覆蓋<select></select> 是否使用那該屬性解決
                    */
                    bgiframe:true,
                    
                    //設置對話框寬度
                    width: 600,
                    
                    //設置對話框高度
                    height: 260,
                    
                    /*
                        設置對話框底部的按鈕
                    */
                    buttons: {
                        "確定": function() {
                            //單擊按鈕后的回調函數,就是按鈕被單擊后的響應事件 
                            $(this).dialog("close"); 
                        }
                        /*
                        "取消": function() { 
                            $(this).dialog("close"); 
                        }
                        */
                    },
                    
                    /*
                        是否為對話框添加ESC快捷鍵
                    */
                    //closeOnEscape: false,
                    
                    //對話框是否可以被拖動
                    draggable:false,
                    
                    //打開對話框時是否使用特效
                    show:"slide",
                    //關閉對話框時是否使用特效動畫
                    hide: "slide",
                    
                    //是否可以調整對話框的大小
                    resizable:false,
                    
                    //調整對話框的高度和寬度極限值(當resizable:true時)
                    //maxHeight:520
                    //maxWidth:620
                    //minHeight:320
                    //minWidth:220
                    
                    //是否為模態窗口,設置為 true 時,頁面上其它元素將被覆蓋且無法響應用戶操作。也就是無法再主界面上進行其他操作
                    modal:true,
                    
                    //是否可覆蓋其它對話框
                    //stack:false
                    
                    //對話框標題(也可以再div的title上進行設置)
                    title:"請登陸"
                    
                    //設置對話框 CSS z-index 值
                    //zIndex:50
                });
                // 對話框的打開連接
                $('#helpdialog_link').click(function(){
                    $('#helpdialog').dialog('open');
                    return false;
                });
});
</SCRIPT>
<BODY>    
<a href="#" id="dialog_link">從此處打開對話框</a></span>
    <div id="helpdialog" title="對話框的標題">
        <p>對話框的內容</p>
    </div>
</BODY>

原文鏈接:https://blog.csdn.net/MOONCOM/article/details/55189616

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM