浏览器缓存问题
該項目中的某一個分頁為公告類型,有兩個表格,首先我們需要在視圖里面寫好表單的樣式,樣式里面的按鈕和表都加上id,便于用戶后面的JS的編寫,通過編寫實現按鈕的功能
如圖
接著給新增和后面需要用到的修改創建一個模態框,就是當用戶點擊新增和則修改按鈕的時候,都會彈出這個模態框
同樣給表和按鈕都賦予ID,
然后通過在Script里面寫好新增的點擊事件,新增點擊事件里面記得要添加重置表單,不然點擊新增按鈕的時候,由于上一次的內容沒有重置,會導致上一次的內容繼續留著新增的填寫框里面,
寫好新增按鈕的點擊事件之后,我們需要新增里面的內容進行保存,所以我們要在控制器里面通過單表查詢,查詢出數據庫里面的公告類型的表,進行連接,
通過單表連接后,通過數據的分頁操作,然后返回列表,這樣是因為視圖里面我們在表單里面加了表單的分頁,這樣子數據不會一下子全部顯示出來,只會顯示出你編寫好的每頁的行數進行顯示,所以控制器要獲取視圖的每頁行數就行分頁操作,返回每頁的行數,并賦予數據。
查詢出來之后,頁面上的表格就會顯示出數據庫的數據,然后我們需要繼續在控制器里面編寫新增公告類型,
首先我們開始的時候要將參數傳到 SYS_NoticeTypeTable(公告類型表里面) ,然后實例化封裝好的方法,然后通過連接數據庫,將models的映射和數據庫進行比對,如果映射的內容和數據庫有重復,則將這些重復的數據總條數輸出到啊是大啊是大撒旦
自命名的范圍變量oldCount里面,接著通過流程控制語句if 判斷oldCount輸出的條數為0,則是映射和數據庫沒有重復,則該題為數據庫沒有的名稱,判斷為新增,else oldCount大于0則數據庫已經存在,是數據庫已經存在的名稱,則判斷為已經存在,中斷用戶的保存。
新增按鈕寫完之后,我們需要在控制器再寫一個修改公告類型的編寫方法,來實現修改的功能。
同樣我們需要實例化封裝好的方法,用if判斷輸入的NoticeTypeName的字符是否為空,如果不為空,則繼續執行if里面的代碼,為空則else提醒用戶填寫完整。
判斷條件if成立,繼續進行下面的查重。通過連表,篩選sysNoticeType.NoticeTypeID不等于數據庫的NoticeTypeID并且用戶頁面輸入的公告類型名稱NoticeTypeName和數據庫公告類型名稱NoticeTypeName相等的條數;
條數等于0,通過try catch 繼續進行判斷,try里面通過把要保存的數據放到數據庫,如果數據新增條數大于0,則表示成功,否則執行catch提醒數據異常,
條數不等于0,則提示公告類型已經存在。
控制器寫完之后。回到視圖里面執行新增,和修改的保存,這兩個功能可以寫在同一個點擊事件里面,
通過判斷數據是否為空,來執行接下來執行新增還是修改。
這些新增和修改按鈕功能都實現的時候,我的網頁出現了一個問題,就是我點開修改按鈕,填完數據保存,它不在原來的數據里面進行修改,而是執行了新增,
請教老師之后,才發現原來是我在視圖的修改公告類型點擊事件的時候,
使用的loadDatatoForm,里面的根據json對象填充form表單方法,是我把這個js插件拉入到項目之后,才添加進去的,
因為瀏覽器沒有刷新這個插件js,所以我修改的點擊事件的根據json對象填充form方法是無效果的,才有了后面的修改變成了新增,解決這個問題的方法很簡單,直接在瀏覽器打開這個頁面,將里面的緩存清除
就可以實現在原基礎上進行修改了。
總結
- 上一篇: mysql 查看 脏页_MySQL:刷脏
- 下一篇: 什么是脏检查?