定义一个数组对象,并按特定格式分割成数组 html
var existsItemArr = new Array();
var existsItems = "${existsItems}";
if(null != existsItems && "" != existsItems){
existsItemArr = existsItems.split(",");
} node
删除数组中的一个元素,首先判断在数组中的位置(是否存在),再进行删除。 json
existsItemArr.splice($.inArray(checkItemId, existsItemArr),1); 数组
判断数组是否为空,并用默认的","号进行组成字符串 this
if(!$.isEmptyObject(existsItemArr)){//判断对象是否为空
params += "&existsItems="existsItemArr.toString();//等同于join()
} spa
对话框进行带参传值,并返回json格式的数组结果 orm
var sURL = "*.do"+params;
var vArguments = new Object();//对话框经过window.dialogArguments来取得传递进来的参数。 vArguments.win=window;//把当前窗口的引用当参数传进去
var sFeatures = "dialogHeight:350px;dialogWidth:750px;center:yes;resizable:yes;status:no;location:no;menubar:no;titlebar:no;";
var vReturn = window.showModalDialog(sURL,vArguments,sFeatures);
if(undefined !=vReturn && $.isArray(vReturn)){//并判断是不是数组
dynAddRow(vReturn);
} htm
function dynAddRow(rowdataArray){
$.each(rowdataArray, function(key, val) {
var rowdata = jQuery.parseJSON(val);
$(":hidden[name='OeModelItems.nodeId']",$("#**")).val(nodeId);//可见性选择器和 容器过滤器
//对处理过的回车换行符进行处理
var surveyContent = rowdata.surveyContent.replace(/<br\>/gm,"\n");
$(":hidden[name='OeModelItems.checkItemId']",tmp).val(rowdata.checkItemId);//json对象属性取值
//添加选择元素以前,并转换成html格式信息
$("#dynRow").before("<tr align='center'>"+tmp.html()+"</tr>");
existsItemArr.push(rowdata.checkItemId);//添加到数组
对象
//var addRow=$("#sampleItem");//获取元素,并克隆副本
//var tmp = addRow.clone();
//绑定特定事件,须要先删除所绑定的事件
//$(".remove").unbind("click");
//$(".remove").bind("click",removeTR);
});
} 事件
//模态对话框传值
function submitForm(){
var returnArray = []; //去选中的ID
$("input[name='selChc']").each(function(){
if($(this).attr("checked")){//对象的某一个属性值
var $tr = $(this).parent("td").parent("tr");//元素的父节点
var $tds = $tr.find("td");//查询当前元素下的全部子元素信息
var checkItemId = $(":hidden[name='oeInspectionItems.checkItemId']",$tds.eq(1)).val();//获取值
//针对特定属性 选择用text() 或 val()方法
var surveyContent = $tds.eq(2).text();
surveyContent = surveyContent.replace(/\n/gm,"<br\>");//为处理json的转换时的特定字符
//组成json格式的字符串,属性名和属性值必须用引号包裹。
var rowdataStr = '{"checkItemId":"'+checkItemId
+'","surveyContentCn":"'+surveyContentCn
+'"}';
returnArray.push(rowdataStr);//添加对象
});
var size = returnArray.length;
if(size == 0){//数据校验
alert("Don't selected rowData!");
return false;
}
window.returnValue = returnArray;//为window对象,传递返回值 window.close(); }