javascript表单处理具体实现代码表单链接按钮.docx
- 文档编号:10866371
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:31
- 大小:21.82KB
javascript表单处理具体实现代码表单链接按钮.docx
《javascript表单处理具体实现代码表单链接按钮.docx》由会员分享,可在线阅读,更多相关《javascript表单处理具体实现代码表单链接按钮.docx(31页珍藏版)》请在冰豆网上搜索。
javascript表单处理具体实现代码表单链接按钮
这篇文章主要介绍了javascript表单处理具体实现代码,包括各种表单、链接、按钮控件介绍,感兴趣的朋友可以参考一下
本文实例处理各种表单,以及链接,按钮的通用组件,教大家如何对javascript表单处理进行操作,具体内容如下
/**
*GenericFormprocessingjs
*@authorAnthony.chen
*/
/**
*Pushbuttonaction[btn_action]dataintoform
*Ifthereisprescript,runtheprescript
*/
"usestrict";
//Allajaxrequestaresynchronizedbydefault
varajaxSynchronized=true;
//Allajaxrequestwillbeunblockbydefault
varajaxAutoUnblock=true;
varajax_action_button=function(e){
varbtn=$(this);
//Addprescript
varpre_script;
if(pre_script=btn.attr("pre_script")){
varret=eval(pre_script);
if(ret==false){
returnfalse;
}
}
varbtn_action=btn.attr('value');
if(btn_action){
$(this).closest('form').data('btn_action',
{name:
'btn_action',value:
btn_action}
);
}
};
/**
*UpdatetheextraformdatainFormElementwithFormelement,KeyandValue
*/
varajax_update_post_data=function(formEle,k,v){
varform=$(formEle);
varpost_data=form.data('post_data');
if(post_data==undefined){
post_data={};
}
if(v==undefined){
deletepost_data[k];
}else{
post_data[k]=v;
}
form.data('post_data',post_data);
returntrue;
};
/**
*BoolCheckboxisspecialcheckboxwhichneedstokeepUNCHECKvalue
*Andpostwithajaxform,theformisintheparent
*/
varbool_checkbox=function(){
vaript=$(this);
varformEle=ipt.closest("form");
var_check=ipt.prop("checked");
if(_check){
ajax_update_post_data(formEle,ipt.attr('name'));
}else{
ajax_update_post_data(formEle,ipt.attr('name'),'f');
}
};
/**
*Initthespinnumber
*/
varspin_number=function(){
varspin=$(this);
varconfig={
lock:
true,
imageBasePath:
'{webpath}/css/images/spin/',
btnCss:
null,
txtCss:
null,
btnClass:
'spin_btn',
};
varinterval=spin.attr('interval');
if(interval){
config.interval=interval;
}else{
config.interval=1;
}
varmin=spin.attr('min');
if(min){
config.min=min;
}
varmax=spin.attr('max');
if(max){
config.max=max;
}
spin.spin(config);
returntrue;
};
/**
*Initthedateinput
*/
vardate_input=function(){
vaript=$(this);
varconfig={
offset:
[4,0],
selectors:
true,
lang:
'{lang}',
firstDay:
1,
format:
'yyyy-mm-dd',
};
varmin=ipt.attr('min');
if(min){
config.min=min;
}
varmin=ipt.attr('min');
if(min){
config.min=min;
}
ipt.dateinput(config);
returntrue;
};
/**
*InitthetimePicker
*/
vartime_picker=function(){
vaript=$(this);
varconfig={};
varstep=ipt.attr("step");
if(step){
config.step=step;
}
ipt.timePicker(config);
returntrue;
};
/**
*GenericAjaxFormpostfunction
*Ifbtn_actionisset,thenadddataintoform
*ifreturiisset,redirecttoreturi
*ifreloadisset,reload
*elseShowblockmessage
*
*theformwillbevalidated.
*/
varajax_form_post=function(e){
varform=$(this);
varpre_script;
if(pre_script=form.attr("pre_script")){
varret=eval(pre_script);
if(ret==false){
returnfalse;
}
}
varerrHint=form.find(".formError").first();
if(errHint.size()==0){
errHint=$("#pageError");
}
errHint.text('').hide();
//CleanupthepageError
if(!
e.isDefaultPrevented()){
//Hideall.formError
$.blockUI({message:
"{__('L_PROCESSING')}"});
varformArray=form.serializeArray();
varbtn_action_data;
varbtn_action;
if(btn_action_data=form.data('btn_action')){
formArray.push(btn_action_data);
form.removeData('btn_action');
btn_action=btn_action_data.value;
}else{
btn_action='';
}
console.log('btnaction:
'+btn_action);
//AddextraData
varpost_data;
if(post_data=form.data('post_data')){
for(varkinpost_data){
//ifpost_data[k]isarray,needmoretodo
formArray.push({name:
k,value:
post_data[k]});
}
form.removeData('post_data');
}
$.post(form.attr('action'),formArray,function(json){
if($(window).data('blockUI.isBlocked')==1){
$.unblockUI();
}
if(json.code===true){
varreturi="";
varretData="{__('L_PROCESSED')}!
";
if(json.data){
retData=json.data;
}
//TODOAddsuppporttoallowsaveandstay
if(btn_action=='reqonly'){
if(returi=form.attr('returi')){
$(window).data('blockUI.returi',returi);
ajaxAutoUnblock=false;
}
$.blockUI({message:
retData,css:
{cursor:
'pointer',padding:
'4px',border:
'1pxsolid#CC0000',},overlayCSS:
{cursor:
'pointer'}});
$(".blockUI").addClass("blockwarn");
}//ifthereisreturiset,thenreturntouri
elseif(returi=form.attr('returi')){
window.location=returi;
//Elseifreloadisset,thenwillbereload
}elseif(form.attr('reload')!
=undefined){
window.location.reload();
}else{
$.blockUI({message:
retData});
$.unblockUI();
}
}
else{
if(typeof(json.data.errmsg)=='string'){
errHint.html(json.data).show();
//$.blockUI({message:
json.data,css:
{cursor:
'pointer',padding:
'4px',border:
'1pxsolid#CC0000',},overlayCSS:
{cursor:
'pointer'}});
//$(".blockUI").addClass("blockwarn");
}else{
errHint.html("{Html:
:
text(__('E_FORM'))}").show();
for(varpinjson.data){
varmsg=json.data[p];
//Processhiddenvalue,Nonehiddeninputshouldhasrefidreferedtohiddenvalue
//ShowingtheServermessagetoref
varele=form.find("[type=hidden][name="+p+"]");
if(ele.length){
deletejson.data.p;
refid=ele.attr("id");
refname=form.find("[hidden-id="+refid+"]").attr("name");
json.data[refname]=+msg;
}
//Muticheckbox
varele=form.find("[type=checkbox][name='"+p+"[]']");
if(ele.length){
deletejson.data.p;
refname=p+'[]';
json.data[refname]=+msg;
}
//@END
}
}
/*
*Checkingthehiddenvalues
*/
form.data("validator").invalidate(json.data);
}},'json');
e.preventDefault();
}else{
errHint.html("{Html:
:
text(__('E_FORM'))}").show();
}
};
/***
*Resettheinput
*/
varajax_post_form_hidden=function(){
varform=$(this);
form.find("[hidden-id]").each(function(){
//ClearthemessageofReference
varinput=$(this);
varrefid=input.attr("hidden-id");
varfield=$("#"+refid+"");
//SetuptheclearofErrmsg
//MonitorthechangeeventonIDelement,removeerrormessage
//ofRealinput
field.change(function(){
//Hiddeninput
varhinput=$(this);
//realinput
varrinput=$("[hidden-id="+hinput.attr("id")+"]").first();
form.data('validator').reset(rinput)
});
});
};
varvalidate_hidden_id=function(input){
varrefid=input.attr("hidden-id");
varfield=$("#"+refid+"");
varmsg=field.attr('msg');
if(!
msg){
msg="{__('E_NOT_EMPTY')}";
}
returnfield.val()?
true:
msg;
};
vardata_eq
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javascript 表单 处理 具体 实现 代码 链接 按钮