同乙個頁面多個div,ajax呼叫

2021-09-02 12:59:06 字數 830 閱讀 7727

最近在做專案的時候發現兩個問題,第乙個問題是在主頁面有多個div,在div裡面有input元素的onclick事件,在第一次開啟div的時候通過onclick呼叫ajax可以被執行,當關掉開啟的div重新再開啟的時候onclick事件不生效。第二個問題是兩個div呼叫ajax時會相互影響,當開啟第乙個div並關閉的時候,第二個div的input元素的onclick事件不被執行了。

針對第乙個問題,將input的onclick時間使用jquery的live()方法進行繫結,這時要對input元素的屬性進行宣告,如,在繫結事件時可以寫成

$("input#updatedata").live("click",function(){

需要執行的**

這樣修改之後就可以執行所需執行的onclick事件了,但是這樣存在乙個問題,當多次呼叫時需要執行的**就會被重複執行,這時因為每執行一次live()就會新生成乙個委派函式,為了避免這個問題只需要在live()前使用die()即可,即將上述**改為:

$("input#updatedata").die().live("click",function(){

需要執行的**

這樣修改之後在重複執行之前總是會銷毀原來的委派,即只保留乙個委派,就不會出現重複的問題了。

針對第二個問題,這裡由於我兩個div裡面有相同的字段,為了偷懶直接將其中乙個div的重複內容複製到了第二個div中,導致元素的id相同,在呼叫ajax根據id進行賦值時就無法確定賦值給哪個div,因此就出現上述我所描述的問題,在這裡需要注意,當同乙個頁面巢狀多個div的時候,除非是不需要對div裡面的元素進行操作,如果涉及到操作的話,一定要保證你所使用的id或者name完全不同,在這裡指出來也希望小夥伴你們汲取教訓。

多個請求使用同乙個Servlet

如果jsp中乙個請求對應乙個servlet那要建很多servlet,冗餘較多。我們可以把乙個模組的請求封裝在乙個servlet,實現功能的模組化,從而簡化 其實這種方式有點類似於struts中的action。新建jsp檔案 輸入如下 分別是3個請求,請求同乙個servlet,但是後邊跟的引數meth...

同乙個Tomcat部署多個專案

一 同一tomcat 多個埠部署不同的專案 在tomcat 安裝目錄下c program files apache tomcat 6.0.29 conf找到server.xml 1 在結點後面增加結點,如下 好處 可以把多個專案部署在根目錄 二 tomcat 部置方式 tomcat部署專案有3種方法...

同乙個Tomcat部署多個專案

第二步 修改 tomcat home conf 下的server.xml檔案 在server.xml檔案中新增節點,乙個節點代表乙個web應用 第三步 複製 tomcat home confi目錄下的catalina生成副本 並命名為catalina1 第四步 測試 1.執行bin startup....