狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

彈出模態窗口總結

admin
2010年8月13日 8:59 本文熱度 4451

今天在做一個彈出模態窗口時搞了我一晚上。google半天,找來找去文章就哪么幾篇,別人的能刷新偶的就是不行,后來在一網友幫助下總算是找到問題所在,搞定了。

//在模態窗口中提交數據總是會彈出一個新窗口,上次遇到過這問題,所以這次一來就在html里加上了
    <form id="form1" runat="server" target="bbc2188">
     <iframe name="bbc2188"   width="0px"   height="0px"   frameborder="0"    style="display:none"></iframe>
//然后在網上又看到這樣一段,    <base target="_self">,偶就把這段加到head里面去了,因為沒太注意這個target="_self"所以搞得偶一晚上都在找問題。

就這樣自己試了很多常用js刷新頁面的方法,都不能實現這個模態頁面刷新,又搜索了半天,看到有人這樣重新加載要刷新的頁面

在html里放一個a標簽,讓他不顯示。

<a id='reload' href='default.aspx?pid=' style='display:none'></a>

下面是用到的js腳本

<script language ="javascript" type ="text/javascript" >
        function geturl()//得到url中的參數,因為偶做的是一個圖片評論,所以這用js接收圖片id方便從新綁定時用。
      {
           var parmname="pid";
           var url = window.location.tostring();
           var arr = url.split("?");
           var parms = arr[1];
           var parmlist = parms.split("&");
           var parmtemp;
          
           for(var i=0;i<parmlist.length;i++)
           {
                parmtemp = parmlist[i].split("=");
                if(parmtemp[0] == parmname)
                return parmtemp[1];
           }
           return "0"
      }

    function setreloadhref()//刷新網頁
   {
        var reload=document.getelementbyid ("reload");
        reload.href ="default.aspx?pid="+geturl()+"&"+math.random();
    }
    function reloadclick()//單擊觸發刷新事件
    {
        var reload=document.getelementbyid ("reload");
        reload.click();
    }
    </script>
然后在<body>中添加事件處理方法

<body onkeydown="javascript:if (event.keycode==116){reload.click();}" onload ="setreloadhref();">

現在頁面可以刷新了,但怎么總不是最新的呢?也就是說現在提交一條數據頁面刷新還是沒變,只有在按一次f5這個模態窗口才刷新剛才提交的數據,刪除 也一樣,后來發現把<form id="form1" runat="server" target="bbc2188">中的target屬性去掉就搞定了。一提交就完成刷新了。

并且之前添加的哪些木用的js腳本也可以刪除了,又是一個小錯誤搞偶一晚上,哎。
====================

 

asp中的模態對話框

終于開始寫b/s的程序。
今天遇到了一個問題, 如何處理模態對話框。具體的要求是:在選擇頁面上的“添加”按鈕,彈出模態對話框,在對話框中添加記錄后,選擇“確定”按鈕,關閉對話框,更新主頁面表格的數據。

網上關于模態對話框的討論有很多,試了一天,發現一個比較好的解決方法:

1、顯示對話框:
javascript腳本文件中加入:
    function openeditwin(frmwin,width,height)
   {      
    var me;
    // 把父頁面窗口對象當作參數傳遞到對話框中,以便對話框操縱父頁自動刷新。
    me = window;
    // 顯示對話框。
    window.showmodaldialog(frmwin,me,'dialogwidth='+width +'px;dialogheight='+height+'px;help:no;status:no')
   }
  
在c#中調用 :
cmdadd.attributes.add("onclick","javascript:openeditwin('" + session["showform"] + "',540,400)");
很多方法是用 response.write或者registerstartupscript 來實現,但是都存在問題,如顯示對話框時頁面是空白、刷新頁面的時候彈出對話框等。
在對話框中加入jscript腳本
   function1 onsubmit() // 強制本窗口提交
   {
    document.form1.target="_self";
   }
2、關閉對話框
   response.write("<script language='javascript'>");
    response.write("window.close()");
   response.write("</script>");

3、對話框關閉后,執行更新操作
   在對話框的關閉事件中加入:
response.write("<script language='javascript'>");
    response.write("window.close()");
    response.write("</script>");
4、更新主頁面中的表格數據。
在“添加”按鈕的處理方法中,添加表格更新的代碼。

 

asp.net使用彈出窗口(對話框)的體會

       從整理這篇文章的目的,在于記錄前一段使用彈出窗口的經驗,同時結合對一些資料的閱讀,總結彈出窗口使用方法。
        首先描述一下需求:在信息發布系統中,信息的一個字段信息為“欄目”,需要從多級欄目中選擇出一個欄目發布文章。考慮到用戶界面的美觀和操作的方便,決定 在新信息發布頁面中放置一個button,用戶點擊該button后,彈出一個顯示欄目樹的窗口,用戶可在該窗口中選擇欄目。
        這樣就引出了本文要討論的問題:如何彈出窗口?如何在父窗口和彈出窗口之間傳遞信息?
在回答這兩個問題之前,首先需要指出,目前有三種方法可以彈出窗口(對話框),它們分別是:

  • window.open方法
  • 無模式對話框
  • 有模式對話框       

         如何在這三種方法中做出選擇、如何對后兩種方法做出前面兩個問題的回答,這在文后所附的文章中都有介紹。所以,這里主要針對window.open方法做出回答。
       下面是一個使用window.open彈出窗口的簡單的例子:

<script>
function open_cate()
{
     window.open(
"openup.aspx","","toolbar=0,location=0,directories=0,status=0,
                menubar=0,scrollbars=1,resizable=0,left=200,top=100,width=250,height=400
");

}
</script>

從代碼中可以看出,我們可以對彈出窗口的諸多屬性進行設置。如果我們想要在點擊一個button時彈出窗口,值需要在該button的onclick時間中調用該javascript函數即可。

解決了如何彈出窗口的問題之后,下面討論如何在頁面之間傳遞信息。

父窗口向彈出窗口傳遞信息
  

這里我 采用的辦法是在url中拼接參數傳遞信息。window.open的第一個參數為url,我們可以把參數加在url后,例如 'openup.aspx?parm1=abc&parm2=<%=serversideparm%>'。這樣,只需在彈出窗口 querystring到這些參數,就實現了動態向彈出窗口傳遞信息。

將彈出窗口的信息傳回父窗口
  

使用彈 出傳口的目的主要是為了同用戶的交互,所以如何在父頁面中得到用戶對彈出窗口的操作結果是非常重要的。其實這里實現的方法也很簡單,同樣是通過 javascript:通過window.opener得到父窗口的window對象,就可以對父窗口進行操作,比如對某個textbox設值。

后記

當初為了實現這個簡單的交互操作,花費了整整一下午的時間,關鍵是對javascript太生疏,自以為做server端的東西才是本事,其實是犯了大錯。

另外,如果在js中引用.net server端對象遇到對象為空的報錯時,很有可能是對象在編譯后,vs對控件進行了重命名。一開始這里不知道,害得我好苦

關于有模式對話框和無模式對話框
參見下面的鏈接:
好的對話框的重要性
http://www.microsoft.com/china/msdn/archives/technic/library/techart/dude09252000.asp

================

如何跳出頁面的frame框架

很多網頁都是框架結構的,在很多的情況下會通過按鈕點擊事件或鏈接,跳出框架轉到其它界面。例如說點擊“注銷登錄”返回到登錄界面。

一、通過運行腳本跳出框架有以下幾種寫法:

1.  <script language = javascript>window.open('login.aspx','_top')</script>"

2.  <script language = javascript>window.open('login.aspx','_parent')</script>"

3. <script language = javascript>window.parent.location.href='login.aspx'</script>

4.    response.write("<script>window.parent.opener=null;window.top.close();</script>")

       response.write("<script>window.open('index.aspx','');</script>")

       這種方法會先關閉原框架窗口,再重新打開一個新的窗口。這在很多功能界面對瀏覽器進行了改變設置,而回到登陸界面又用缺省設置的情況下適用。

二、鏈接跳出框架

這種情況就很簡單了,加上 target="_top" 屬性就可以了。


該文章在 2010/8/13 8:59:14 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved