html、jsp頁面標籤的遍歷
應用場景:最近的專案中二級子頁面遍歷生成、操作表格比較多,記錄一下一直用的遍歷方法。
一般此類表格都是通過ajax請求資料,然後從callbackFunction中獲取資料集合,遍歷生成表:
eg:
var postData=new Object();
postData.idString=idString;
$.ajax({
url:'debt/findXXXList.do'+'?t='+Math.random()+'&token='+token,
data:postData,
type:'POST',
dataType:'json',
success:function(data){
//初始化資料
$("#confirmInf").empty();
for(var i=0;i<data.length;i++){
var inf=data[i];
var realname=inf.real_name;
var amount=inf.original_amount_cny;
var debtID=inf.debtID;
var html='<tr><td><a class="name" title='+realname+' style="margin-right:0px;">'+realname+'</a></td>';
var html2='<td class="abstract shuheixian"><input type="text" id="detils" placeholder="摘要內容不超過20個字" debtid='+debtID+' maxlength="20" autofocus></td>';
var html3='<td class="sum">'+amount+'</td><td class="sum"></td>';
var html4='<td class="sum">'+amount+'</td></tr>';
$("#confirmInf").append(html+html2+html3+html4);
}
//彈出視窗
var maskHight=$(document).height();
var maskWidth=$(document).width();
$('<div class="mask"></div>').appendTo($('body'));
$('div.mask').css ({
'opacity':0.5,
'background':'#000',
'position':'absolute',
'left':0,
'top':0,
'width':maskWidth,
'height':maskHight,
'z-index':9999
});
$('.accept_contain').show();
gaoduDIV();//樣式
$(".accept_contain input").eq(0).focus();
},
error:function(){
console.log("error初始化資料出錯。。。");
//傳送請求給傳送郵件介面(郵件介面處理掉異常資訊),呼叫給後臺提示儘快修復
var pageName="new/receivedClaims";
var type ="findReceivedDebtPageList===初始化彈窗失敗===jsp434行";
tips("系統升級中,請稍後進行嘗試。",false);
},
});
此時,彈出二級頁面,並且迴圈生成了表格資料。
這時候,需要對錶格中的input標籤內容進行驗證,而常規的通過id獲取標籤的方式不能準確定位到某條迴圈生成的資料.
此時分為兩種情況:
1、獲取某一行中編輯過的多條資料。
這個需要定位到每個標籤,並且從標籤中獲取我們所需要的資料。對應著標籤結構慢慢找並不難:
//驗證
if(!validate()){
return false;
}
var dataStr="";
var flag=1;
var Obj1=document.getElementsByClassName("dataInfo");//關鍵!獲取所有tr標籤,然後根據結構去一層層的找
for (var i=0;i<Obj1.length;i++ ){
var obj=Obj1[i].childNodes;
var type ="claims";
var debtid=obj[0].attributes["debtid"].value;
var debtstatus=obj[0].attributes["debtstatus"].value;
var detils=obj[2].childNodes[0].value;
var amount1=obj[3].childNodes[0].value;
var amount2=obj[4].childNodes[0].value;
//資料合法性調整
if(amount1==""){amount1=0};
if(amount2==""){amount2=0};
//str拼接
if(flag==1){
dataStr+=debtstatus+"&.&"+debtid+"&.&"+detils+"&.&"+amount1+"&.&"+amount2+"&.&";
flag=-1;
}else{
dataStr+="@*@"+debtstatus+"&.&"+debtid+"&.&"+detils+"&.&"+amount1+"&.&"+amount2+"&.&";
}
}
2、對每一行的某一列資料進行驗證。
這個用的jquery:
//資料驗證
function validate(){
var result =true;
//摘要欄位驗證
$("#editInf input[id='intro'][type='text']").each(function(){//關鍵:選擇器的使用 id為editInf的標籤下所有 id=editInf 型別為text的標籤
var value=$(this).val();
if(value==null||value==''||value.length==0){
$(this).val("");
$(this).attr("style","background-color: #FFC1C1");
$(this).attr("placeholder","摘要不能為空");
result = false;
}
});
//金額1驗證
$("#editInf input[id='amount1'][type='text']").each(function(){
var value=$(this).val();
if(!/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(value)){
$(this).val("");
$(this).attr("style","background-color: #FFC1C1");
$(this).attr("placeholder","請填寫數字");
result = false;
}
});
//金額2驗證
$("#editInf input[id='amount2'][type='text']").each(function(){
var value=$(this).val();
if(!/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(value)){
$(this).val("");
$(this).attr("style","background-color: #FFC1C1");
$(this).attr("placeholder","請填寫數字");
result = false;
}
});
return result;
}
相關推薦
html、jsp頁面標籤的遍歷
應用場景:最近的專案中二級子頁面遍歷生成、操作表格比較多,記錄一下一直用的遍歷方法。 一般此類表格都是通過ajax請求資料,然後從callbackFunction中獲取資料集合,遍歷生成表: eg: var postData=new Object(); postDa
在 jsp頁面中遍歷list中的資料
3)使用JSTL迴圈表示式方式(此方式不需要前提0,通過EL表示式${itemCategoryList}可以直接取出request中的屬性值): <select name="category" class="select1" id="category">
jsp 頁面中用struts2 標籤遍歷集合(list map)
1,list: public class ListTestAction extends ActionSupport { private List<String> list1; private List<User> list2;
JSP自定義標籤遍歷List (ct:forEach)
問題描述 : jsp 的pageContext域中存在User物件的users列表,想在jsp檔案中遍歷users. <% class User{ private String name; private Strin
[JSP]EL表示式和JSTL標籤遍歷取值物件和陣列與原來的對比
》》取出放進了request的key裡list,list含有物件 原: <%@page import="com.yiki.dbutil.*"%> <%@ page languag
復習 使用for、while循環遍歷文件,數據類型轉換
數據類型 for while 1. python訪問文件通過內置函數open打開文件,看一下open函數解釋:打開文件返回的是一個文件對象fd = open('/tmp/tmp.txt')查看他的方法:關閉文件:fd.close()向文件內寫入:fd = open('/tm
List、Set、Map常見集合遍歷總結
排序 out java tlab vhdl for var 定義 word Java中的集合有三大類,List、Set、Map,都處於java.util包中,List、Set和Map都是接口,不能被實例化,它們的各自的實現類可以被實例化。List的實現類主要有ArrayLi
for in、for和EnumerateObjectsUsingBlock遍歷的區別
value cts mut 很多 普通 使用 keys bsp 枚舉 1.對於集合中對象數很多的情況下,for in 的遍歷速度非常之快,但小規模的遍歷並不明顯(還沒普通for循環快) 2. 如果在for in 循環裏,對這個數組進行了修改的話,無論是增,刪,修改數組
Thymleaf中th:each標籤遍歷list如何獲取index
簡單介紹:傳遞給後臺一個String型別的list,需要獲取到list的每一個元素,然後進行篩選,得到正確的文字值,看程式碼就明白了 程式碼: //後臺java程式碼//failList是一個String型別的list,存放的是狀態碼00 01 02 03 04 05 06中的某幾種map.addA
html或jsp頁面自動提交,無需每次重啟服務
從eclipse轉到idea遇到各種問題,之前eclipse可以自動儲存頁面內容無需重啟服務,但是idea不可以,網上找了n種辦法也沒用,可能版本不一樣吧,把我的解決方法紀錄一下,方便以後有人遇到這個問題可以直接解決。 首先在pom.xml加入下面依賴。然後按下面截圖配置一下就可以啦。 <depe
註冊,登陸的Servlet、dao、service、domain、jsp頁面、
登陸的JSP頁面程式碼: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html>
LeetCode - Path Sum I、II、III、IV - 深度優先遍歷
本篇文章記錄 Path Sum 相關的四道題目: 112 - Path Sum - Easy 113 - Path Sum II - Medium 437 - Path Sum III - Easy 666 - P
三、set集合容器-遍歷刪除查詢與自定義
簡介:要學習set集合容器,首先要了解紅黑樹(Red-black Tree)。紅黑樹是一種自平衡二叉查詢樹,是電腦科學中用到的一種資料結構,典型的用途是實現關聯陣列。Set集合容器實現了紅黑樹的平衡二叉檢索樹的資料結構,在插入元素時,它會自動調整二叉樹的排列,把該元素放到適當的位置,以確保每個子樹根
數組、數組的遍歷、排序算法
自動變 int clu using 鍵盤 space [] 遍歷 nbsp int x[3] = { 1,2,3 }; int x[3] = { 1,2 };//未初始化的元素,默認0 int x[] = { 1,2,3 };//省略下標,依據元素個數自動變更下標 int
c標籤遍歷取map中list集合中的物件屬性值
今天寫批量列印功能時,後臺傳到前端的資料是map集合,以前沒用過,取值時出現了問題,在這裡記錄一下,備忘和複習時看: 1.前端主要部分如下: <body> <c:forEach var="fee" items="${map[\"EtImportFees\
Python自學之路:遞迴、棧和佇列遍歷目錄
遞迴呼叫的概念:一個函式呼叫了自身,稱為遞迴呼叫 遞迴函式的概念:一個能夠被自身呼叫的函式稱為遞迴函式 遞迴一般執行的是迴圈邏輯 編寫遞迴函式的方法: 1、找出臨界條件,比如最小值,最大值等等 2、找出這一次和上一次的關係 3、假設當前函式已經能用,呼叫自身計算
隨機訊號、嚴平穩、寬平穩和遍歷性隨機訊號的通俗講解
在資訊系統中,資訊通常是以某種訊號形式存在的。而訊號在產生和傳輸的過程中,不可避免的會受到噪聲的干擾。即便有用訊號是確定性訊號,但是,由於噪聲是隨機訊號,要處理的訊號實質上也是隨機訊號。 對於一個隨機訊號,通常我們用多維概率密度函式來對其進行描述,當維數越多時,對隨機訊
JAVA基礎(19)---陣列的定義、初始化及遍歷
陣列 陣列的定義:將同種型別的資料,有組織的存放與一定的記憶體空間中。 陣列的定義格式: 常用的格式: ①資料型別[] 陣列名稱 = new 資料型別[定義陣列的大小];
STL map映照容器(一)map建立、元素插入、元素刪除和遍歷訪問
map映照容器的元素資料是由一個鍵值和一個映照資料組成的,鍵值與映照資料之間具有一一映照的關係。 map映照容器的資料結構是採用紅黑樹來實現的,插入元素的鍵值不允許重複,比較函式只對元素的鍵值進行
Jsp頁面標籤禁止預設填充黃色背景(親測有效)
一、jsp的<h:tex>標籤只能使用值這個方法去掉input在Chrome瀏覽器上的黃色背景:(普通html也可以用) input:-webkit-autofill, textarea:-webkit-autofill, select:-webki