jsp:選中複選框實現刪除功能
阿新 • • 發佈:2019-02-03
前段時間,接到一個開發jsp前臺頁面的專案,好久沒接觸JSP了,個人感覺亞歷山大。公司實在沒人願意上,只能硬著頭皮接了。 在開發過程中也碰到了不少問題,乘現在專案暫告一段落,在此記錄下,以後再碰到類似問題就好辦了。
1. 通過按鈕繫結delarea()函式 <input name="" type="button" class="btn4" onclick="delarea();" /> 2.因為表格的資料是從資料庫中實時獲取,我將checkbox的值設定為其編號,能實現唯一值。 out.print("<td><input name='ids' type='checkbox' value='" +a.getId()+ "' /></td>");
<script language="javaScript" SRC="ajax_del_are_core.js" ></script>
3.在這裡宣告delarea()函式的地址
4. 接下來是重點,以上三步實現的是,當用戶點選複選框(單選或多選)時,能將其對應的checkbox值改變,然後就能在接收函式中判斷此複選框是否唄選中。我將對應記錄的ID值付給checkbox,實現傳輸選中記錄ID的功能,將接收到的資料以,號分隔開,存入str中,以備使用: var str=""; var sel=document.getElementsByName("ids");//獲取checkbox的值 for( var i=0;i<sel.length;i++) if (sel[i].checked==true)
str+=sel[i].value+",";
5.第四步驟主要在AJAX函式中完成,然後將str傳到對應的servlet中進行資料處理。在這裡我通過split()函式將str實現數值與“,”的分離。
String id=request.getParameter("ids");
String[] arr = id.split(",");
String strSQL= "delete from ts_id_vs_relation where ";
for(int i=0;i <arr.length -1;i++)
{
strSQL = strSQL + " id= ' "+arr[i]+ " ' or ";
}
strSQL = strSQL + " id= ' "+arr[arr.length-1]+ " ' ";
6.接下來就是具體的資料庫操作啦,不多做贅述。至此,刪除功能實現 ,打完收功!
1. 通過按鈕繫結delarea()函式 <input name="" type="button" class="btn4" onclick="delarea();" /> 2.因為表格的資料是從資料庫中實時獲取,我將checkbox的值設定為其編號,能實現唯一值。 out.print("<td><input name='ids' type='checkbox' value='" +a.getId()+ "' /></td>");
<script language="javaScript" SRC="ajax_del_are_core.js"
3.在這裡宣告delarea()函式的地址
4. 接下來是重點,以上三步實現的是,當用戶點選複選框(單選或多選)時,能將其對應的checkbox值改變,然後就能在接收函式中判斷此複選框是否唄選中。我將對應記錄的ID值付給checkbox,實現傳輸選中記錄ID的功能,將接收到的資料以,號分隔開,存入str中,以備使用: var str=""; var sel=document.getElementsByName("ids");//獲取checkbox的值 for( var i=0;i<sel.length;i++) if
6.接下來就是具體的資料庫操作啦,不多做贅述。至此,刪除功能實現 ,打完收功!