Re: [問題] jQuery的form套件
回答我自己問的問題...
※ 引述《Peruheru (還在想)》之銘言:
: 我上次有來這版上問過有關於jQuery的問題
: 上次問的是如何為動態新增的元素連結上事件
: 現在這則是上次那個的延伸
: 因為Submit按鈕是產生於PHP
: form內容有一堆checkBox
: 本來是想要挑選出form內所有已勾選的選項
: 再把值傳給PHP
: 不過因為我不熟悉選擇器
: 就算能選也不知道怎麼做出跟按下submit時,送出一樣的資料
: 後來看到有人文章內容的推文出現
: 可以使用jquery.form的函式庫
: 我去蒐尋了一下,果然有找到
: 照著它的範例我做下去,真的可以達到我想要的樣子
: 主要就是不換頁刷新某部分資料
: 但給別人試過後,他們反應
: 「雖然可以看到頁面,其它功能可以用,但按下那個submit鈕還是會換頁,還會有亂碼」
: 我自己試了之後,發現FireFox可以動作(我當初就是用這個測試的),也不會換頁
: 但IE真的會出現那個問題
: 亂碼問題我知道原因,因為受呼叫的PHP只有表格而沒有標頭資訊
: 跟本不為一個完整的HTML內容
: 所以瀏覽器會誤判編碼,證據是 換頁前是正常的
: 前面提了那麼多,再講到這個訊息
: 原因就是,我只有那塊區域是因為有複選不會寫
: 而使用了jQuery.form函式庫的.ajaxSubmit函式
: 這樣看來是IE無法使用這個函式庫的這個語法的意思嗎?
: 還是說我需要修改些什麼讓這函式庫可以動作呢?
: 也或許要回到開頭,以自己抓值的方式模擬submit動作
: 只傳一個值我會,那這種不確定數量的陣列回傳,應該要怎麼做才好呢?
: 我主要想知道資料格式,以及如何靠選取器抓取物件
因為我還是找不到資料格式
試到剛剛也不曉得如何Post出checkbox所有勾選者的值陣列回PHP
後來偶然看到jQuery的.serialize()函式
查了一下功能,才發現我何必那麼辛苦
對著選擇器選擇出來的form元素,使用serialize這函式後
其回傳值就是原本submit表單時所會傳送的資料了
所以可以直接拿來當成jQuery.post的data使用、傳送
這樣就解決了在IE底下live+submit事件無法使用的遺憾
(感謝上篇回應我文章的網友,你讓我知道要乾脆的放棄這函式XD)
所以我現在的做法是
將原本submit按鈕換成一般type為button的按鈕(避免表單的送出)
再將其click事件使用live連上自製function
裡面先用一個變數承接該form的serialize函式取得的發送值
然後使用Post方法傳遞給php,再將回傳值填至目標內
這部分完成!
: jQuery的選取器有回傳值嗎?
也是自問自答
看了黑暗執行緒在MSDN上的教學文件後
(叫[邊看邊學jQuery系列])
選擇器有回傳值
回傳的就是選到的物件
而且同樣可以使用直接選擇器後面能接的方法(如parents)
所以似乎可以一選再選
這問題好像很基本
希望可以對跟我一樣菜的人有幫助
才不會卡這麼久
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.163.202
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):