:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

สอบถามการส่งค่า ID ผ่าน modal pop-up

ฟอรัมถาม-ตอบเกี่ยวกับ C#
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่างเพิ่มเติม)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
phiyaphat
Member
Member
Posts: 3
Joined: Sun Dec 31, 2017 4:52 pm

สอบถามการส่งค่า ID ผ่าน modal pop-up

#1

Post by phiyaphat »

เมื่อไฟล์ต่างๆถูกบันทึกลงฐานข้อมูลแล้วเรียกชื่อไฟล์มาแสดงใน Gridview ดังภาพ ซึ่งมีปุ่มให้คลิกเข้าไปแก้ไขไฟล์ผ่าน modal pop-up ดังภาพที่ 2 โดยใช้ Hiddenfield เป็นตัวเก็บค่า ID ของแต่ละไฟล์ เมื่อคลิกปุ่มแก้ไขจะส่งค่า ID ไปในฟังก์ชัน editClick เมื่อ pop-up แสดงขึ้นมาแล้วเลือกไฟล์ที่ต้องการอัพเดท จากนั้นคลิกปุ่ม save จะเข้าฟังก์ชัน EditFileUpload แต่ปัญหาอยู่ตรงที่ค่า ID จากปุ่มแก้ไขไม่เข้าฟังก์ชัน EditFileUpload ค่ะ เลยไม่สามารถทำการ Update ไฟล์ได้ รบกวนขอคำแนะนำได้ไหมคะ

Code: Select all

protected void editClick(object sender, EventArgs e)
        {
            HiddenDocID.Value = (sender as LinkButton).CommandArgument;
            ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", "open();", true);
            
        }

        protected void EditFileUpload(object sender, EventArgs e)
        {
            string id = HiddenDocID.Value;
            string filename = Path.GetFileName(FileUpload1.PostedFile.FileName);
            string contentType = FileUpload1.PostedFile.ContentType;
            try
            {
                using (Stream fs = FileUpload1.PostedFile.InputStream)
                {
                    using (BinaryReader br = new BinaryReader(fs))
                    {
                        byte[] bytes = br.ReadBytes((Int32)fs.Length);
                        string strConString = ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString;
                        using (SqlConnection con = new SqlConnection(strConString))
                        {
                            string query = @"UPDATE Documents SET Doc_name = @Doc_name, Doc_type = @Doc_type, Data = @Data where [Doc_id] = @Doc_id";
                            using (SqlCommand cmd = new SqlCommand(query))
                            {
                                cmd.Connection = con;
                                cmd.Parameters.AddWithValue("@Doc_name", filename);
                                cmd.Parameters.AddWithValue("@Doc_type", contentType);
                                cmd.Parameters.AddWithValue("@Data", bytes);
                                cmd.Parameters.AddWithValue("@Doc_id", id);
                                con.Open();
                                cmd.ExecuteNonQuery();
                                con.Close();
                            }
                        }
                    }

                }
            }
            catch (Exception ex)
            {
                string error = ex.Message;
            }
        }
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30905
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบถามการส่งค่า ID ผ่าน modal pop-up

#2

Post by snasui »

:D HiddenDocID ได้ประกาศเป็นตัวแปร Field ใช่หรือไม่ครับ

หากใช่ Code ควรจะทำงานได้ ไม่เช่นนั้นก็ต้องลอง Debug ดูว่าค่าที่ Assign ให้กับ HiddenDocID ใน editClick กับ id ใน EditFileUpload คือตัวเดียวกันหรือไม่ครับ
phiyaphat
Member
Member
Posts: 3
Joined: Sun Dec 31, 2017 4:52 pm

Re: สอบถามการส่งค่า ID ผ่าน modal pop-up

#3

Post by phiyaphat »

ใช้ HiddenField แบบนี้ค่ะ แต่ค่า ID ไม่ยอมส่งค่าเข้าฟังก์ชัน EditFileUpload ค่ะ ลอง Debug แล้วได้ตามภาพเลยค่ะ

Code: Select all

<asp:HiddenField ID="HiddenDocID" runat="server" Value="" />

Code: Select all

<asp:LinkButton ID="Edit" runat="server" class="btn btn-danger btn-xs" data-target="exampleModal"
                                            OnClick="editClick" CommandArgument='<%# Eval("Doc_id")%>'><span class="glyphicon glyphicon-pencil" ></span></asp:LinkButton>
                                        </span>
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30905
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: สอบถามการส่งค่า ID ผ่าน modal pop-up

#4

Post by snasui »

:D ลองดูวิธีการตาม Link นี้ว่าช่วยแก้ปัญหาได้หรือไม่ครับ https://stackoverflow.com/questions/232 ... able-scope

สำหรับการโพสต์ Code ให้ขึ้นต้นด้วย [code] และปิดด้วย [/code] เพื่อให้แสดงเป็น Code ด้านบนผมแก้ให้แล้วทั้งสองโพสต์ การโพสต์แบบ Inline คือขึ้นต้นด้วย [c] และปิดด้วย [/c] ใช้เพื่อกล่าวถึง Code ในการอธิบายข้อความตามปกติ หากนำมาใช้กับการโพสต์ Code จะอ่านลำบากครับ
Post Reply