jquery操作以及ajax異步處理
<script type="text/javascript" >
$(function(){
var addFormValilater = $("#addForm").valilater({});
window.formSubmit = function(thiz){
addotNull();
if(addFormValilater.checkPassNull()){
var $password = $("#password").val();
if ($password == null || $password === "" || $password.length < 6 || $password.length >= 20)
{
$("#password").showErrorMsg("密碼在6-20位之間");
return;
}
$("#main-container").mask("提交中··········");
$.ajax({
type: "POST",
url: "/rest/basePlatform/savePlatformInfo",
data : $("#addForm").serialize(),
dataType:"json",
async: false,
success:function(data){
if(data.success){
layer.msg('操作成功', {
icon: 1,
time: 3000
},
function () {
var channelId = $("#channelId").val();
var channelType = $("#channelType").val();
location.href="/rest/basePlatform/add?selectBusinessPattern="+channelType +"&channelNameId="+channelId;
}
);
}else{
alert(data.msg || '操作失敗');
$("#main-container").unmask();
}
},
error:function (XMLHttpRequest, textStatus, errorThrown) {
alert('服務器正忙,請稍後再試');
$("#main-container").unmask();
}
});
}
};
jQuery("#submitBtn").bind("click", function(){
formSubmit(jQuery(this));
});
jQuery("#payCourseCode").bind("change", function(){
$("#payCourse").val("");
if(""!=$("#payCourseCode").val()) {
$("#payCourse").val($("#payCourseCode").find("option:selected").text());
}
});
fybm();
gbhy();
});
//動態增加非空校驗
function addotNull(){
delNotNull();
//國標品目校驗邏輯
var hidIindustryItemIds=$("input[name='industryItemIds']");
if(hidIindustryItemIds.length==0){
$("#selIndustryItemGoods").attr("refType","notNull");
}else {
$("#selIndustryItemGoods").removeAttr("refType");
}
//根據客戶類別 增加非空校驗
if($("#customerCategory").val()==2){
//客戶類別爲外部時 支付賬號信息必填
$("#payCompanyName").attr("refType","notNull");
$("#payCompanyBankName").attr("refType","notNull");
$("#secondBusinessNum").attr("refType","notNull");
}else if($("#customerCategory").val()==3){
//客戶類別爲金融時 erp、費用科目、字段必填
$("#erp").attr("refType","notNull");
$("#payCourseCode").attr("refType","notNull");
var endPathNames=$("input[name='endPathName']");
if(endPathNames.length==0){
$("#inputDept").attr("refType","notNull");
}else {
$("#inputDept").removeAttr("refType");
}
}else {
//客戶類別爲集團時 費用部門必填
var endPathNames=$("input[name='endPathName']");
if(endPathNames.length==0){
$("#inputDept").attr("refType","notNull");
}else {
$("#inputDept").removeAttr("refType");
}
}
//根據平臺模式 增加非空校驗
if($("#invoiceModel").val()==1){
//購買方模式
$("#buyerName").attr("refType","notNull");
$("#buyerIdentificationNumber").attr("refType","notNull");
$("#buyerAddress").attr("refType","notNull");
$("#buyerPhone").attr("refType","notNull");
$("#buyerBank").attr("refType","notNull");
$("#buyerCard").attr("refType","notNull");
}
}
function delNotNull(){
$("#payCompanyName").removeAttr("refType");
$("#payCompanyBankName").removeAttr("refType");
$("#secondBusinessNum").removeAttr("refType");
$("#erp").removeAttr("refType");
$("#payCourseCode").removeAttr("refType");
$("#inputDept").removeAttr("refType");
$("#buyerName").removeAttr("refType");
$("#buyerIdentificationNumber").removeAttr("refType");
$("#buyerAddress").removeAttr("refType");
$("#buyerPhone").removeAttr("refType");
$("#buyerBank").removeAttr("refType");
$("#buyerCard").removeAttr("refType");
$("#inputDept").val("");
}
jQuery("#reBack").bind("click", function(){
location.href = "/rest/basePlatform/list";
});
$(function(){
if ("$!{MSG}" != "") {
alert("$!{MSG}");
}
});
function getCustomerCategory(){
var bN=$("#buyerName").val();
var bIN=$("#buyerIdentificationNumber").val();
jQuery.ajax({
type: "post",
url: "/rest/basePlatform/getCustomerCategory?buyerName="+bN+"&buyerIdentificationNumber="+bIN,
dataType: "json",
async: false,
success: function(data) {
if(data.success){
$("#customerCategorySel").val(data.customerCategory);
$("#customerCategory").val(data.customerCategory);
$("#jrCompanyCode").val(data.jrCompanyCode);
$("#buyerOuId").val(data.buyerOuId);
}
alert(data.msg);
}
});
}
//========================= 國標行業開始=========================
function gbhy() {
//綁定國標行業下拉框
$("#selIndustryItemGoods").append("<option value=''>選擇要增加的項</option>");
#foreach($item in $!industryItemGoodsDataList)
var selValue='$!{item.id}';
var selText='$!{item.goodsName}_$!{item.industryType}_$!{item.industryDesc}_$!{item.itemsType}_$!{item.itemsDesc}';
$("#selIndustryItemGoods").append("<option value='"+selValue+"'>"+selText+"</option>");
#end
//國標行業初始化
#foreach($item in $!{basePlatformWebDto.industryItemGoodsList})
var checkValue='$!{item.id}';
var checkText='$!{item.goodsName}_$!{item.industryType}_$!{item.industryDesc}_$!{item.itemsType}_$!{item.itemsDesc}';
addGbhy(checkText,checkValue);
#end
//添加國標行業事件
jQuery("#selIndustryItemGoods").bind("change", function(){
var checkText=$("#selIndustryItemGoods").find("option:selected").text();
var checkValue=$("#selIndustryItemGoods").val();
//檢查是否存在
var eles = $("#gbhyTbody").find("input[name=industryItemIds]");
for (var i=0; i<eles.length; i++) {
if(checkValue==$(eles[i]).val()) {
alert('重複添加');
return;
}
}
addGbhy(checkText,checkValue);
$("#selIndustryItemGoods").val("");
});
}
//刪除國標行業事件
function delGbhy(obj) {
jQuery(obj).parents('tr').remove();
}
//頁面增加國標行業
function addGbhy(checkTest,checkValue) {
$("#gbhyTbody").append("<tr>" +
"<td style='width:90%'><input type='hidden' name='industryItemIds' value='"+checkValue+"'/>"+checkTest+"</td>"+
"<td style='width:10%'><div class='visible-md visible-lg hidden-sm hidden-xs btn-group'><button οnclick='delGbhy(this)' type='button' class='btn btn-xs btn-danger'><i class='icon-trash bigger-120'></i></button></div></td>"+
"</tr>");
}
//========================= 國標行業結束=========================
//========================= 費用部門開始=========================
//費用部門操作
function fybm() {
//費用部門初始化
#foreach($item in $!{basePlatformWebDto.feeDepartmentList})
var checkText='$!{item.allPathName}';
var checkValue='$!{item.humanCapitalCode}(#)$!{item.endPathName}(#)$!{item.allPathName}(#)$!{item.allPathNameCode}';
addFybm(checkValue,checkText);
#end
}
//頁面增加費用部門
function addFybm(checkValue,checkTest) {
$("#fybmTbody").append("<tr>" +
"<td><input type='hidden' name='endPathName' value='"+checkValue+"' />"+checkTest+"</td>"+
"<td><div class='visible-md visible-lg hidden-sm hidden-xs btn-group'><button οnclick='delFybm(this)' type='button' class='btn btn-xs btn-danger'><i class='icon-trash bigger-120'></i></button></div></td>"+
"</tr>");
}
//刪除費用部門
function delFybm(obj) {
jQuery(obj).parents('tr').remove();
}
function deptSearch(obj){
var deptName = jQuery(obj).val();
if(deptName.length>0){
var a = getDeptDate(deptName);
jQuery(obj).autocomplete({
source:a,
minLength: 0,
select: function( event, ui ) { // 選中某項時執行的操作
//檢查是否存在
var eles = $("#fybmTbody").find("input[name=endPathName]");
for (var i=0; i<eles.length; i++) {
if(ui.item.beanStr==$(eles[i]).val()) {
alert('重複添加');
return;
}
}
addFybm(ui.item.beanStr,ui.item.label);
jQuery(obj).val("");
}
});
}
}
//搜索費用部門
function getDeptDate(obj){
var a = [];
jQuery.ajax({
type: "post",
url: "/rest/basePlatform/listDeptJson?endPathName="+obj,
dataType: "json",
async: false,
success: function(data) {
if(data !=null){
var infoBean = data.infoBean;
if(infoBean.resStatus==200){
var banddata = data.infoBean.responsebody.organizationVoList;
banddata.forEach(function(item){
a.push({
// 設置item信息
label: item.organizationFullname, // 下拉項顯示內容
value: item.organizationFullname, // 下拉項對應數值
beanStr:item.organizationCode+"(#)"+item.organizationName+"(#)"+item.organizationFullname+"(#)"+item.organizationFullPath,
})
})
}else{
alert(infoBean.resMsg);
}
}
}
});
return a;
}
//========================= 費用部門結束=========================
</script>