jquery實現(xiàn)預(yù)覽提交的表單代碼分享
預(yù)覽表單,查看后確認提交或者返回重填
XML/HTML Code
<form class="mform" id="myform" method="POST" id="myform" action="">
<fieldset>
<legend>Registeration</legend>
<table cellspacing="0">
<tbody>
<tr>
<td><label for="u_name"> Username :</label></td>
<td><input type="text" name="uname" id="u_name">
<td>
</tr>
<tr>
<td><label for="u_pwd"> Password :</label></td>
<td><input type="password" name="uname" id="u_pwd"></td>
</tr>
<tr>
<td><label for="u_mail"> Email :</label></td>
<td><input type="email" name="uname" id="u_mail"></td>
</tr>
<tr>
<td><label for="u_country"> Country :</label></td>
<td><select name="Country" id="u_country">
<option value="" selected="selected">Select Country</option>
<option value="United States">United States</option>
<option value="United Kingdom">United Kingdom</option>
<option value="China">China</option>
</select></td>
</tr>
<tr>
<td><span> Gender :</span></td>
<td><input type="radio" name="gender" id="male" value="male">
<label for="male"> Male</label>
<input type="radio" name="gender" id="female" value="female">
<label for="female"> Female </label></td>
</tr>
<tr>
<td><label for="subscribe"> Subscribe Us : </label></td>
<td><input type="checkbox" id="subscribe" name="subscribe" value="yes"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="submit"></td>
</tr>
</tbody>
</table>
</fieldset>
</form>
<script src="../../js/jquery-1.9.1.min.js"></script>
<link rel="stylesheet" type="text/css" href="previewForm/previewForm.css" />
<script src="previewForm/previewForm.js"></script>
JavaScript Code
<script>
$(document).ready(function() {
$('#myform').previewForm();
});
</script>
previewForm.js
(function($){
$.fn.previewForm = function(options){
var form_settings = $.extend({
identifier : 'label',
show_password : true,
extratext : 'Do You Want To submit',
yes : 'yes',
no : 'no',
title : 'Please preview'
}, options);
var dia_log;
var renderBUTTON;
var this_frm;
this_frm = $(this);
$(this).submit(function (){
if($('#pfomdata').length){
return true;
}
dia_log="";
var needle_cnfrm;
if(this.id.length > 0){ needle_cnfrm = '#'+this.id+' label'; }
else { needle_cnfrm = '.'+$(this).attr('class')+' label'; }
$(needle_cnfrm).each(function(i,val) {
if($(this).text().length >2){
what_t= $('#'+$(this).attr('for')) ;
switch(what_t.prop('type')){
case 'password':
if(!form_settings.show_password)
dia_log +=$(this).text() + " your selected password<br/>";
else
dia_log +=$(this).text() +what_t.val()+"<br/>";
break;
case 'select-one':
dia_log +=$(this).text() +$('#'+$(this).attr('for')+' option:selected').text()+"<br/>";
break;
case 'radio':
if( what_t.is(':checked'))
dia_log +=$(this).text() +' '+what_t.val()+"<br/>";
break;
case 'checkbox':
if( what_t.is(':checked'))
dia_log +=$(this).text() +' '+what_t.val()+"<br/>";
break;
case 'undefined':
break;
default:
dia_log +=$(this).text() +what_t.val()+"<br/>";
break;
}
}
});
dia_log = dia_log.replace('undefined', '');
renderBUTTON="";
renderBUTTON += '<a href="javascript:void(0);" class="button form_yes">'+form_settings.yes+'<span></span></a>';
renderBUTTON += '<a href="javascript:void(0);" class="button form_no">'+form_settings.no+'<span></span></a>';
var renderTemplate = [
'<div id="previewOverlay">',
'<div id="previewBox">',
'<h1>',form_settings.title,'</h1>',
'<p>',dia_log,'</p>',
'<p>',form_settings.extratext,'</p>',
'<div id="previewButtons">',
renderBUTTON,
'</div></div></div>'
].join('');
$(renderTemplate).hide().appendTo('body').fadeIn();
$(".form_yes") .click(function(){
var input = $("<input>").attr("type", "hidden").attr("id", "pfomdata").val("true");
this_frm.append($(input));
this_frm.submit();
});
$(".form_no") .click(function(){
$('#previewOverlay').fadeOut(function(){
$(this).remove();
});
});
return false;
});
}
})(jQuery);
previewForm.css
#previewOverlay{
width:100%;
height:100%;
position:fixed;
top:0;
left:0;
background:url('ie.png');
background: -moz-linear-gradient(rgba(11,11,11,0.1), rgba(11,11,11,0.6)) repeat-x rgba(11,11,11,0.2);
background:-webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(11,11,11,0.1)), to(rgba(11,11,11,0.6))) repeat-x rgba(11,11,11,0.2);
z-index:100000;
}
#previewBox{
background:url('body_bg.jpg') repeat-x left bottom #e5e5e5;
width:460px;
position:fixed;
left:50%;
top:50%;
margin:-130px 0 0 -230px;
border: 1px solid rgba(33, 33, 33, 0.6);
-moz-box-shadow: 0 0 2px rgba(255, 255, 255, 0.6) inset;
-webkit-box-shadow: 0 0 2px rgba(255, 255, 255, 0.6) inset;
box-shadow: 0 0 2px rgba(255, 255, 255, 0.6) inset;
}
#previewBox h1,
#previewBox p{
font:26px/1 'Cuprum','Lucida Sans Unicode', 'Lucida Grande', sans-serif;
background:url('header_bg.jpg') repeat-x left bottom #f5f5f5;
padding: 18px 25px;
text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.6);
color:#666;
}
#previewBox h1{
letter-spacing:0.3px;
color:#888;
}
#previewBox p{
background:none;
font-size:16px;
line-height:1.4;
padding-top: 7px;
}
#previewButtons{
padding:15px 0 25px;
text-align:center;
}
#previewBox .button{
display:inline-block;
background:url('buttons.png') no-repeat;
color:white;
position:relative;
height: 33px;
font:17px/33px 'Cuprum','Lucida Sans Unicode', 'Lucida Grande', sans-serif;
margin-right: 15px;
padding: 0 35px 0 40px;
text-decoration:none;
border:none;
}
#previewBox .button:last-child{ margin-right:0;}
#previewBox .button span{
position:absolute;
top:0;
right:-5px;
background:url('buttons.png') no-repeat;
width:5px;
height:33px
}
#previewBox .form_yes{ background-position:left top;text-shadow:1px 1px 0 #5889a2;}
#previewBox .form_yes span{ background-position:-195px 0;}
#previewBox .form_yes:hover{ background-position:left bottom;}
#previewBox .form_yes:hover span{ background-position:-195px bottom;}
#previewBox .form_no{ background-position:-200px top;text-shadow:1px 1px 0 #707070;}
#previewBox .form_no span{ background-position:-395px 0;}
#previewBox .form_no:hover{ background-position:-200px bottom;}
#previewBox .form_no:hover span{ background-position:-395px bottom;}
- Jquery圖片延遲加載插件jquery.lazyload.js的使用方法
- Jquery的each里用return true或false代替break或continue
- jQuery基于當(dāng)前元素進行下一步的遍歷
- jquery 表格排序、實時搜索表格內(nèi)容(附圖)
- jQuery實現(xiàn)鼠標(biāo)經(jīng)過圖片預(yù)覽大圖效果
- jquery預(yù)覽圖片實現(xiàn)鼠標(biāo)放上去顯示實際大小
- jquery實現(xiàn)兼容瀏覽器的圖片上傳本地預(yù)覽功能
- jQuery實現(xiàn)圖片放大預(yù)覽實現(xiàn)原理及代碼
- jquery repeater 模仿 Google 展開頁面預(yù)覽子視圖
- jquery 圖片上傳按比例預(yù)覽插件集合
- 基于jquery實現(xiàn)的上傳圖片及圖片大小驗證、圖片預(yù)覽效果代碼
相關(guān)文章
Jquery中$.post和$.ajax的用法小結(jié)
本節(jié)重點講的是jquery中調(diào)用ajax的4種方法中最常用的:$.post、和$ajax。如果讀者沒有javascript和jquery的知識,或者沒有ajax的概念,那么請先去問問度娘,再來讀本文。2015-04-04jQuery是用來干什么的 jquery其實就是一個js框架
jQuery是一bai個簡潔而快速的JavaScript庫,可用于du簡化zhi事件處理,HTML文檔遍歷,Ajax交互和dao動畫,以更快速開發(fā)網(wǎng)站2021-02-02jquery ui dialog里調(diào)用datepicker的問題
一個項目中使用了在dialog中做查詢條件的表單,其中用到了日期作為查詢條件,使用datepicker時總被dialog遮擋住2009-08-08解決jQuery ajax動態(tài)新增節(jié)點無法觸發(fā)點擊事件的問題
在寫ajax加載數(shù)據(jù)的時候發(fā)現(xiàn),后面添加進來的demo節(jié)點元素,失去了之前的點擊事件,如何解決此問題呢?下面小編給大家?guī)砹薺Query ajax動態(tài)新增節(jié)點無法觸發(fā)點擊事件的解決方法,一起看看吧2017-05-05