假設(shè)有以下一個(gè)表單:
安源網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)公司2013年開(kāi)創(chuàng)至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。
form id="form1"
......
/form
當(dāng)要在javascript代碼中提交表單時(shí),用document.forms[0].submit();或document.getElementById("form1").submit();
html
meta?http-equiv="Content-Type"?content="text/html;?charset=gb3212"/
head
style?type="text/css"
div?{?margin:?4px?auto;?text-align:?center;?}
label?{?display:?inline-block;?text-align:?right;?width:?100px;?margin-right:?10px;?}
button?{?margin:?4px;?}
input?{?width:?150px;?}
/style
script
//沒(méi)用使用jquery,?如果是jquery,會(huì)更容易一些。
window.onload?=?function(){
var?form?=?document.createElement("form");
form.setAttribute("method",?"post");
form.append(createRow("username",?"text",?"用戶名:?"));
form.append(createRow("userpwd",?"password",?"密碼:?"));
form.append(createRow("reuserpwd",?"password",?"確認(rèn)密碼:?"));
form.append(createRow("useremail",?"text",?"電子郵件:?"));
var?div?=?document.createElement("div");
var?btn?=?document.createElement("button");
btn.setAttribute("type",?"button");
btn.append(document.createTextNode("驗(yàn)證"));
btn.onclick?=?function(){?return?checkform(false);?}
div.append(btn);
btn?=?document.createElement("button");
btn.setAttribute("type",?"submit");
btn.append(document.createTextNode("提交"));
btn.onclick?=?function(){?return?checkform(true);?}
div.append(btn);
form.append(div);
document.body.append(form);
}
function?createRow(_name,?_type,?_text){
var?div?=?document.createElement("div");
div.append(createLabel(_text));
div.append(createTextBox(_name,?_type));
return?div;
}
function?createTextBox(_name,?_type){
var?txt?=?document.createElement("input");
txt.setAttribute("type",?_type);
txt.setAttribute("name",?_name);
return?txt;
}
function?createLabel(_text){
var?lbl?=?document.createElement("label");
lbl.append(document.createTextNode(_text));
return?lbl;
}
function?checkform(bln){
var?form?=?document.forms[0];
if(form.username.value.length??4){
alert("用戶名至少包含4個(gè)字符");
return?false;
}
if(form.userpwd.value.length??8){
alert("密碼至少包含8個(gè)字符");
return?false;
}
if(form.userpwd.value?!=?form.reuserpwd.value){
alert("兩次密碼不一致");
return?false;
}
if(!(/^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/gi).test(form.useremail.value)){
alert("郵箱不符要求");
return?false;
}
if(!bln){?alert("驗(yàn)證通過(guò)");?}
return?bln;
}
/script
/head
body
/body
/html
form name="form" method="post" action=""
input type="button" value="刪除" onClick="delall();" class="button"
/form
script language="javascript"
function delall(){
if(confirm('確定刪除選中的咨詢嗎?\n注意,刪除后無(wú)法恢復(fù)!')){
this.form.action="UserReview.asp?action=delall" //設(shè)置處理程序
this.form.submit(); //提交表單
}
}
/script
注意上面是button 不是submit
若是submit 需要在 form標(biāo)簽上加 onSubmit="delall()"
1.javascript刷新頁(yè)面的方法
window.location.reload();
使用window.open()彈出的彈出窗口,刷新父窗口
window.opener.location.reload()
使用window.showDialog彈出的模式窗口
window.dialogArguments.location.reload();
2.javascript彈出窗口的兩種實(shí)現(xiàn)方式 ---下面給兩個(gè)彈出屏幕居中窗口的例子
window.open()方式
復(fù)制代碼代碼如下:
function ShowDialog(url) {
var iWidth=300; //窗口寬度
var iHeight=200;//窗口高度
var iTop=(window.screen.height-iHeight)/2;
var iLeft=(window.screen.width-iWidth)/2;
window.open(url,"Detail","Scrollbars=no,Toolbar=no,Location=no,Direction=no,Resizeable=no,
Width="+iWidth+" ,Height="+iHeight+",top="+iTop+",left="+iLeft);
}
window.showModalDialog方式
復(fù)制代碼代碼如下:
function ShowDialog(url) {
var iWidth=300; //窗口寬度
var iHeight=200;//窗口高度
var iTop=(window.screen.height-iHeight)/2;
var iLeft=(window.screen.width-iWidth)/2;
window.showModalDialog(url,window,"dialogHeight: "+iHeight+"px; dialogWidth: "+iWidth+"px;
dialogTop: "+iTop+"; dialogLeft: "+iLeft+"; resizable: no; status: no;scroll:no");
}
注意這里的第二個(gè)參數(shù),window
3.頁(yè)面中設(shè)置不進(jìn)行緩存數(shù)據(jù)的方法
在jsp頁(yè)面加入如下語(yǔ)句
復(fù)制代碼代碼如下:
%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
%
4.無(wú)提示關(guān)閉頁(yè)面的方法
復(fù)制代碼代碼如下:
function CloseWin(){
var ua = navigator.userAgent; var ie = navigator.appName=="Microsoft Internet Explorer"?true:false;
if(ie){
var IEversion = parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
if( IEversion 5.5){
var str = '';
document.body.insertAdjacentHTML("beforeEnd", str);
document.all.noTipClose.Click();
} else {
window.opener =null; window.close();
}
}else{
window.close()
}
}
5、定時(shí)關(guān)閉彈出的窗口---設(shè)置/清除定時(shí)器
復(fù)制代碼代碼如下:
scriptlanguage="JavaScript"
!--
functioncloseit(){
setTimeout("self.close()",100000)//單位是毫秒,這里是100秒
setInterval("self.close()",100000)
window.clearTimeout(me.timer);
window.clearInterval(me.timer);
/script
6.javascript彈出子窗口中傳值---通過(guò)url傳值
復(fù)制代碼代碼如下:
script language="javascript" type="text/javascript"
function fn_modify(pid){
var ModifyInfo=new Object();
window.showModalDialog("modify_main.asp?pid="+pid,ModifyInfo,"dialogHeight:180px;dialogWidth:300px;dialogLeft:;dialogTop:;resizable:off;center:on;help:off;scroll:off;status:off")
Reload();
}
function Reload(){location.href="abc.asp";}
/SCRIPT
a href="abc.asp" onClick="fn_modify('這是值')"單擊/a
7.js隱藏/顯示表單
document.all("id").style.display=="none";//隱藏
document.all("id").style.display=="";//顯示
document.getElementById("bt").style.display=="none"
document.getElementById("bt").style.display==""
id為table,input 的id
8.js控制表單元素有效/失效
document.getElementById("bt").disabled=true;
document.all("Submit1").disabled=true;//失效
document.all("Submit1").disabled=false;//有效
設(shè)置/獲取元素的值
document.getElementById("labTitle").innerHTML="IP模式";//設(shè)置值
document.getElementById("labTitle").innerHTML//獲取值
labTitle 為div,span,table的id
實(shí)例1:
復(fù)制代碼代碼如下:
input id="mytext" type="text" value="我是不能用的"
input type="button" value="disabled" onClick="javascript: document.all.mytext.disabled='false'"
input type="button" value="enable" onClick="javascript: document.all.mytext.removeAttribute('disabled')"
實(shí)例2:
復(fù)制代碼代碼如下:
input id="mytext" type="text" value="我是能用的"
input type="button" value="disable" onClick="if (mytext.disabled==false){ mytext.disabled=true;mytext.value='我是不能用的';this.value='enable'} else { mytext.disabled=false;mytext.value='我是能用的';this.value='disable'}"
9.頁(yè)面通過(guò)函數(shù)提交表單的方法
復(fù)制代碼代碼如下:
function exit(){
selcardForm.action="/NDHotel/queryTroom.do?method=exitSystem";
selcardForm.submit();
}
10.遍歷radio方法
復(fù)制代碼代碼如下:
input id="mode1" type="radio" name="workMode" value="1" checked
var radios=document.getElementsByName("workMode");
var workMode="";
for(var i=0;iradios.length;i++){
if(radios[i].checked==true){
workMode=radios[i].value;
}
}
11.向select中動(dòng)態(tài)添加option
復(fù)制代碼代碼如下:
select id="ddlProvince" name="ddlProvince" onchange="cityResult()"
var prov=document.getElementById("ddlProvince");
prov.options.add(new Option("---請(qǐng)選擇---",""));
var pArray=zoneIdProvince.split("");
for(var i=0;ipArray.length;i++){
var idpArray=pArray[i].split("#");
var sZoneID=idpArray[0];
var sProvince=idpArray[1];
prov.options.add(new Option(sProvince,sZoneID));
}
12.頁(yè)面中使用prototype ajax提交數(shù)據(jù)的實(shí)現(xiàn)方式(java)
一步:在head/head中添加以下js文件鏈接
復(fù)制代碼代碼如下:
head
script language="JavaScript" src="/NDHotel/js/prototype-1.6.js"/script
/head
二步:把prototype-1.6.js文件放到/NDHotel/js/指定的目錄中
三步:在script type="text/javascript"/script中聲明以下調(diào)用函數(shù)
復(fù)制代碼代碼如下:
script type="text/javascript"
function editIpSegment(){
var url='/NDHotel/ipsegmentset.do?method=roomChangeNotice';
var pars = 'startip='+startip+'endip='+endip+'lindex='+lindex;
new Ajax.Request( url, {method: 'get', parameters: pars, asynchronous:false,onComplete:editResult});
}
function editResult(result){
var returnStr = result.responseText;
if(returnStr =='fail'){
alert("");
return false;
}
}
/script
四步:實(shí)現(xiàn)后臺(tái)調(diào)用
復(fù)制代碼代碼如下:
public ActionForward roomChangeNotice(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {
String result = "";
PrintWriter pw = RainPrintWriter.getPrintWriter(response);
try {
NotifyServiceTwo.sendMessage(4, 0);
result = "success";
} catch (Exception e) {
logger.error("roomChangeNotice" + e);
}
pw.write(result);
pw.close();
return null;
}
13.js中獲取表單的值的方式:
復(fù)制代碼代碼如下:
document.getElementById("lindex").value
document.all.lindex.value//lindex在頁(yè)面中必須是唯一的
//設(shè)置獲取焦點(diǎn)
document.getElementById("lindex").focus()
document.all.startip.focus()
//設(shè)置失去焦點(diǎn)
document.getElementById("lindex").blur()
document.all.startip.blur()
14.動(dòng)態(tài)添加/刪除表格中的行
復(fù)制代碼代碼如下:
table width="100%" id="tdSearch" name="tdSearch" cellpadding="0" cellspacing="0" align="center"
/table
//動(dòng)態(tài)生成table的行
var autoId = 0; // 自增變量
function addRow(value1,value2){
var highQuery=document.getElementById("tdSearch");
highQuery.insertRow();
var newRow = highQuery.rows[highQuery.rows.length - 1];
newRow.id = "row_" + autoId;
newRow.insertCell();
newRow.cells[0].innerHTML = "input width='200' value='"+value1+"' onchange='changeip("+autoId+")' type='text' id='bIPFrom_"+autoId+"'-";
newRow.insertCell();
newRow.cells[1].innerHTML = "input width='200' value='"+value2+"' type='text' id='bIPTo_"+autoId+"' ";
var cell2 = newRow.insertCell();
cell2.innerHTML = "input class='btn_1word' type='button' class='HQ_BUTTON' value='-' onClick=removeRow('" + newRow.id + "')";
cell2.setAttribute("class", "yellowCell2");
autoId=autoId+1;
}
function removeRow(rowId){
var trRow = document.getElementById(rowId);
//alert(trRow);
//if(rowId!="row_0"){
trRow.removeNode(true);
//}
}