[問題] 增加內容後套用function
我有兩個PHP網頁,以及一個.js的JavaScript語法檔案
其中一個PHP檔是主要的PHP網頁檔
有關於外觀,或那個.js語法檔案都是掛載在那一個網頁上
在那個語法檔內,我寫了一小段jQuery的程式
主要是當使用者按下原先主畫面上的某個按鈕時
會使用jQuery.post()方法
去跟另外一個PHP檔案傳送該按鈕的要求
然後將更改過後的資料傳回主PHP檔,用 jQuery("#id").html() 的方式
將原本就有內容的某塊div內容刷新,但不切換網頁
想讓它看起來都在同一頁完成,不會有整頁刷新的情況出現
基本上做到目前這樣是成功了
但有問題的是後面
我刷新後的資料同樣會有跟上面類似的格式
而我希望它能套用跟上面已完成部分同樣的function
但卻不知道怎麼樣套用上去
我剛剛試著將含有jQuery.post()方法的函式寫成具名的函數
(邊看網頁跟書本邊寫的,大家的範例似乎都是寫成不具名的)
然後想在 jQuery("#id").html()
完成後的下一行執行 jQuery("input").bind() 的方法
但這樣好像不行,它會跑成無窮迴圈的樣子...
js的程式碼部分長這樣:
jQuery(document).ready(function(){
jQuery("input").bind("click",function(){
var da = jQuery(this).val();
var typ = jQuery(this).attr("name");
jQuery.post("/c2.php",{dType: typ ,Num: da},
function(res){
jQuery("#sel").html(res);
//jQuery("input").bind("click",clkEvent());
}
);
});
});
//的部分是我剛剛說到,原先想的做法
將原本要在ready時bind的函式寫成有名字的
再等之後來bind
但或許是我漏了什麼重要的點
當我那樣寫時會變成無窮迴圈
(之前為了判斷程式有沒有跑進去而寫了個alert提式,會像視窗炸彈一樣關不掉...)
再來我不使用bind()方法(ready時還是會使用,之後不用而已)
而同樣寫成具名的函式後,在第二個次php檔輸出時就多寫了 onClick = "clkEvent()"
結果發現它的alert通知訊息有跑出來,但沒有產生我要求的變化
甚至連上面原本可以用的也變成只剩下嘴砲(alert),更新功能不見了
我想請問,有什麼方法可以在讀入其他來源的html資訊,並加入本身後
將新加入的部分,符合要求的標籤都加上同樣的程式碼呼叫?
我不知道為什麼我的bind那樣寫會變無窮迴圈
本來以為function只有在有人呼叫觸發時才會動作,我搞錯了嗎?
請問要怎麼改才好呢?
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.233.185
※ 編輯: Peruheru 來自: 118.168.233.185 (07/10 19:34)
→
07/10 19:44, , 1F
07/10 19:44, 1F
→
07/10 19:46, , 2F
07/10 19:46, 2F
→
07/10 19:49, , 3F
07/10 19:49, 3F
→
07/10 20:26, , 4F
07/10 20:26, 4F
→
07/10 20:26, , 5F
07/10 20:26, 5F
→
07/10 20:26, , 6F
07/10 20:26, 6F