js想在表单提交后alert出个提示 100
6个回答
展开全部
表单提交有页面就已经跳转了。
本页面是会刷新的。
可以考虑有AJAX 或 iframe隐藏提交表单,这些页面都是不会刷新的。
iframe隐藏提交表单,原理如下:
1.写一个Javascript类,动态添加一个IFrame。具体是在 document.body 对象中appendChild 如下结构:
<DIV id="i_frame_div">
<IFrame id="i_frame" name="i_frame" width="1px" height="1px" style="display:none" src="inner.html"></IFrame>
</DIV>
这是通过Style的"display:none",来实现IFrame的不可见的;
不可以设成style="width:0px,height:0px,display:none",这样会导致一些浏览器不添加IFrame
首先用DOM的方式生成<DIV>,然后使用:
var i_div = document.getElementById("i_frame_div");
i_div.innerHTML="<IFrame id=\"i_frame\" name=\"i_frame\" width=\"1px\" height=\"1px\" style=\"display:none\" src=\"inner.html\"></IFrame>";
的方式将IFrame嵌入页面内;
注意,不要使用 DOM 的方式,这样会导致通过 IE 的 DOM 树不能正常获得IFrame内前网页的内容;
即不要采取如下形式:
var i_frame=document.createElement("IFrame");
i_frame.id="i_frame";
...
var i_div = document.getElementById("i_frame_div");
i_div.appendChild(i_frame);
这样的代码在<Form target="i_frame">提交时,IFrame的内嵌页面inner.html在FireFox中会自动刷新。而IE 6.0 则会新弹出一个窗口;
src属性必须指定一个空的html文件;
2.将这个类实例化为一个全局变量,这个类的构造函数就写成以上代码;
3.写一个<Form>, 注意:
将其属性target指向IFrame的名称,这样提交后返回的目标页面就会在IFrame中,而不被看见。
将提交按钮改为一般的Button :<INPUT type="button" onclick="func()">
4.为以上类添加一个函数sendFileRequest(),参数放入Form的名称和回调函数的指针,这样就可以像表单中在提交前添加一些需要的变量,并且提交;
5.这里注意一点,如果表单<Form>中不包含<Input type="file">这样的元素的话,表单内容完全可以自动生成,例如可以通过函数sendFileRequest()进行构建,或在嵌入的页中进行构建,然后把表单的各种值以Key=Value数组的形式传入,借此可以封装成一个函数:
var form=document.createElement("Form");
...
但如果包含<Input type="file">的话,文件上传时该tag的属性value是文件的名称,而此属性是只读的不能被赋值:
var fileInput=document.createElement("Input");
fileInput.type="file";
fileInput.name="myName"
fileInput.value="myfile.txt" //此句会出错
这是由于安全的原因,<Input type="file">不能被赋值;
这样,表单必须做正常形式,target指向IFrame的name。
6.在以上的那个类中,再添加一个函数作为回调函数getResponse(msg):
getResponse:function(msg){
this.responseText=msg;
this.HandleResponse.call(this);
//调用用户传入的回调函数
}
7.服务器端程序的撰写。主要是向IFrame提交一个可自动运行的网页:
<HTML>
<HEAD><TITLE></TITLE></HEAD>
<BODY onload="doit();"></BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
function doit(){
parent.fileuploader.getResponse(msg);
//调用回调函数
}
//-->
</SCRIPT>
</HTML>
本页面是会刷新的。
可以考虑有AJAX 或 iframe隐藏提交表单,这些页面都是不会刷新的。
iframe隐藏提交表单,原理如下:
1.写一个Javascript类,动态添加一个IFrame。具体是在 document.body 对象中appendChild 如下结构:
<DIV id="i_frame_div">
<IFrame id="i_frame" name="i_frame" width="1px" height="1px" style="display:none" src="inner.html"></IFrame>
</DIV>
这是通过Style的"display:none",来实现IFrame的不可见的;
不可以设成style="width:0px,height:0px,display:none",这样会导致一些浏览器不添加IFrame
首先用DOM的方式生成<DIV>,然后使用:
var i_div = document.getElementById("i_frame_div");
i_div.innerHTML="<IFrame id=\"i_frame\" name=\"i_frame\" width=\"1px\" height=\"1px\" style=\"display:none\" src=\"inner.html\"></IFrame>";
的方式将IFrame嵌入页面内;
注意,不要使用 DOM 的方式,这样会导致通过 IE 的 DOM 树不能正常获得IFrame内前网页的内容;
即不要采取如下形式:
var i_frame=document.createElement("IFrame");
i_frame.id="i_frame";
...
var i_div = document.getElementById("i_frame_div");
i_div.appendChild(i_frame);
这样的代码在<Form target="i_frame">提交时,IFrame的内嵌页面inner.html在FireFox中会自动刷新。而IE 6.0 则会新弹出一个窗口;
src属性必须指定一个空的html文件;
2.将这个类实例化为一个全局变量,这个类的构造函数就写成以上代码;
3.写一个<Form>, 注意:
将其属性target指向IFrame的名称,这样提交后返回的目标页面就会在IFrame中,而不被看见。
将提交按钮改为一般的Button :<INPUT type="button" onclick="func()">
4.为以上类添加一个函数sendFileRequest(),参数放入Form的名称和回调函数的指针,这样就可以像表单中在提交前添加一些需要的变量,并且提交;
5.这里注意一点,如果表单<Form>中不包含<Input type="file">这样的元素的话,表单内容完全可以自动生成,例如可以通过函数sendFileRequest()进行构建,或在嵌入的页中进行构建,然后把表单的各种值以Key=Value数组的形式传入,借此可以封装成一个函数:
var form=document.createElement("Form");
...
但如果包含<Input type="file">的话,文件上传时该tag的属性value是文件的名称,而此属性是只读的不能被赋值:
var fileInput=document.createElement("Input");
fileInput.type="file";
fileInput.name="myName"
fileInput.value="myfile.txt" //此句会出错
这是由于安全的原因,<Input type="file">不能被赋值;
这样,表单必须做正常形式,target指向IFrame的name。
6.在以上的那个类中,再添加一个函数作为回调函数getResponse(msg):
getResponse:function(msg){
this.responseText=msg;
this.HandleResponse.call(this);
//调用用户传入的回调函数
}
7.服务器端程序的撰写。主要是向IFrame提交一个可自动运行的网页:
<HTML>
<HEAD><TITLE></TITLE></HEAD>
<BODY onload="doit();"></BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
function doit(){
parent.fileuploader.getResponse(msg);
//调用回调函数
}
//-->
</SCRIPT>
</HTML>
展开全部
楼上真能说 <br><br>其实就是<br><script language="javascript"><br>function chenggong(){<br>alert("提交成功");<br>document.getElementById("form的ID").submit();<br>// 一定要给FORM设ID 如果用名字找是另一个方法<br>}<br></script> <br>form里面 别用<input type="submit" name=""/>提交<br>就用一个按钮就行<input type="button" name="" onClick="return chenggong()"> 就是说在点击这个按钮的时候 调用JS方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个怎么说啊,你可以选择JavaScript来实现
具体的情况是要结合你的代码;例如:<script language="javascript">
alert("提交成功成功");
window.history.go(-1);
</script>
具体的情况是要结合你的代码;例如:<script language="javascript">
alert("提交成功成功");
window.history.go(-1);
</script>
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上真能说
其实就是
<script language="javascript">
function chenggong(){
alert("提交成功");
document.getElementById("form的ID").submit();
// 一定要给FORM设ID 如果用名字找是另一个方法
}
</script>
form里面 别用<input type="submit" name=""/>提交
就用一个按钮就行<input type="button" name="" onClick="return chenggong()"> 就是说在点击这个按钮的时候 调用JS方法
其实就是
<script language="javascript">
function chenggong(){
alert("提交成功");
document.getElementById("form的ID").submit();
// 一定要给FORM设ID 如果用名字找是另一个方法
}
</script>
form里面 别用<input type="submit" name=""/>提交
就用一个按钮就行<input type="button" name="" onClick="return chenggong()"> 就是说在点击这个按钮的时候 调用JS方法
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、在提交后的页面最上面加<script>alert('**');</script>
2、用xmlhttp提交
3、form提交到隐藏的iframe (form的target=隐藏的iframe的id),就可以在提交代码后面直接加alert
2、用xmlhttp提交
3、form提交到隐藏的iframe (form的target=隐藏的iframe的id),就可以在提交代码后面直接加alert
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询