Copyright © 2003-2010
By Suthep Sangvirotjanaphat
  Mobile: 089-967-2200, 081-915-7816
Phone: 0-2992-4877   Fax: 0-2992-4878
Fast Contact Us

GreatFriends.Biz Community

Custom Search
 MESSAGE #74873 (อ่าน 3,396 ครั้ง)

พอเปิด pop up ขึ้นมาแล้ว ปิด pop up หน้าหลักก็ refresh ตัวเอง แต่มันมี Msgbox ขึ้นมาถาม ช่วยทีนะคับ

 
พอผมกดปุ่ม ที่ page หลัก pop up (window)ก็จะขึ้นมาใน pop up ก็ทำการเพิ่มค่าบางอย่างให้ page หลัก
พอปิด pop up มันก็ขึ้นมาตามรูปอ่ะคับ  แล้วต้องกด Retry page หลัก ถึงจะทำการ refresh หน้า
คือผมไม่อยากให้มันมี msgbox ขึ้นมาคับ
ทำไงดีคับ.....ช่วยหน่อยนะครับ      ขอบคุณมาก ๆ คับ


nongball วันที่ส่ง: 7 ก.พ. 51 17:33 GMT+7
วันที่ปรับล่าสุด: 11 ก.พ. 51 11:33 GMT+7
REPLY #1 (74883)

คุณใช้ window.opener.refresh() ที่ popup หรือเปล่าครับ

ลองใช้ window.opener.submit() แทนครับ ให้มัน postback ไปที่ server อีกครั้ง แทนที่จะ refresh ครับ



jnithi วันที่ส่ง: 7 ก.พ. 51 22:21 GMT+7
วันที่ปรับล่าสุด: 7 ก.พ. 51 22:21 GMT+7
REPLY #2 (74895)

ขอบคุณคับ มันไม่ขึ้น msgbox แล้ว

แต่ มันไม่ทำการ refresh page หลักให้ครับ คือผมต้องการให้ refresh page หลักด้วย
เพื่อจะได้โชว์ค่าที่ได้ ปรับเปลี่ยนค่า ใน pop up ให้โชว์ที่ page หลักด้วยหนะคับ
.....ช่วยหน่อยนะคับ  ขอบคุณมาก ๆ คับ


nongball วันที่ส่ง: 8 ก.พ. 51 02:37 GMT+7
วันที่ปรับล่าสุด: 8 ก.พ. 51 02:37 GMT+7
REPLY #3 (74901)

ตอนแรกคุณเขียนแบบไหนหรอ ใช้ script อะไรอะครับ

ขอดูหน่อยครับ



tapeza555 วันที่ส่ง: 8 ก.พ. 51 09:24 GMT+7
วันที่ปรับล่าสุด: 8 ก.พ. 51 09:24 GMT+7
REPLY #4 (74993)

 { ...

    Response.Write("<script>window.open('Add Detail             Matrix.aspx',null,'height=250,width=400,status=no,toolbar=no,menubar=no');</script>");

...}//อันนี้ในหน้าหลักนะคับ

 

{...

Response.Write("<script>window.opener.location.reload();</script>"); 

Response.Write("<script>window.close();</script>");

...}//อันนี้หน้า pop up คับ

 

ขอบคุณมาก ๆ นะคับ



nongball วันที่ส่ง: 9 ก.พ. 51 23:39 GMT+7
วันที่ปรับล่าสุด: 9 ก.พ. 51 23:39 GMT+7
REPLY #5 (75072)

ผมว่าปัญหามันคงเกิด จากตอนกดปุ่มเปิด Dialog อะครับ

พอกดเปิด หน้าหลักมันต้อง Submit ไป Server 
พอเราเรียก window.opener.location.reload(); เลยถามแบบนี้
 
ลองมาดูทางแก้กัน
    ผมไม่แน่ใจนะครับว่าคุณจำเป็นต้องให้มัน Submit เข้า Server เพื่อไปทำอะไรอย่างอื่นก่อนที่
จะเปิดหน้าใหม่หรือป่าว  ถ้าแค่ต้องการให้มันเปิด หน้าใหม่อย่างเดียว ลองเปลี่ยนมาใช้
แบบนี้ครับ
 
1. ในหน้าหลัก ใช้  Attributes.Add() หรือใช้ roperty OnClientClick แทน แล้วกำหนด return false ครับ

protected void Page_Load( object sender, EventArgs e ) {

        if( !Page.IsPostBack ) {

                    Button1.Attributes.Add( "onclick", "window.open('Add Detail    

                         Matrix.aspx',null,'height=250,width=400,status=no,toolbar=no,menubar=no');return false;" );

        }

}
 
2. กรณีที่จำเป็นต้องใช้แบบเดิม เพราะ ต้องไปทำอะไรบางอย่างก่อนเปิดหน้าใหม่ งั้นลองวิธีนี้ครับ
ในหน้า Dialog เอาแบบบ้านๆๆ เลย
 

Response.Write( "<script>window.opener.location.href = window.opener.location.href;window.close();</script>" );

 

3. ผมเคยใช้อยู่อีกแบบนึง มันคล้ายๆๆ กับแบบแรก แต่ผมใช้เป็น window.showModalDialog และไม่ได้สั่ง return false; 

   ลักษณะการทำงานคือ มันจะเปิด Dialog ก่อน จากนั้น พอปิด Dialog มันจะเข้าไปทำงาน ในปุ่ม 

    protected void Button1_Click( object sender, EventArgs e ) {

         // สมมุติ ผมต้องการ Binding ข้อมูลใน GridView ใหม่                               

         this.bindGrid();

    }

  แบบนี้มันจะไม่ได้ Refresh หน้าใหม่ แต่เป็นการ PoskBack ปกติอะครับ 



tapeza555 วันที่ส่ง: 11 ก.พ. 51 11:33 GMT+7
วันที่ปรับล่าสุด: 11 ก.พ. 51 11:33 GMT+7
กระทู้นี้มีอายุเกิน 365 วันแล้ว ท่านจะไม่สามารถตอบกระทู้นี้ได้อีก
ถ้าต้องการสนทนาต่อ กรุณาตั้งเป็นกระทู้ใหม่ได้ในหน้าโฮม
และอาจจะอ้างถึงกระทู้นี้ โดยก๊อปปี้ข้อความในกล่องสีขาวด้านล่างไปแปะในกระทู้ใหม่

copy เพื่ออ้างอิงถึงข้อความนี้:
พอเปิด pop up ขึ้นมาแล้ว ปิด pop up หน้าหลักก็ refresh ตัวเอง แต่มันมี Msgbox ขึ้นมาถาม ช่วยทีนะคับ
http://greatfriends.biz?74873


25 ต.ค. 07:25
Online: 37