在asp中使用js,但不能返回提交的页面 return没有起作用,总是弹出alert框后跳到下一个页面,请教如何

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在asp中使用js,但不能返回提交的页面 return没有起作用,总是弹出alert框后跳到下一个页面,请教如何相关的知识,希望对你有一定的参考价值。

<script language="javascript">
function check()
if(ks_time.Starttime.value=="")

alert("开始时间不能为空");
ks_time.Starttime.focus();
return;

if(ks_time.Endtime.value < ks_time.Starttime.value)

alert("输入的时间有误,请重新输入!");
return;


<FORM id="ks_time" name="ks_time" method="post" action="fhss.asp">

发货查询 开始时间:
<INPUT name="Starttime" type="text" id="Starttime" onClick="getDateString(this,oCalendarChs)" value="" size="12" readonly="">
结束时间:
<INPUT name="Endtime" type="text" id="Endtime" value="" size="12" onClick="getDateString(this,oCalendarChs)" readonly="">
货运公司:
<INPUT name="guanjian" type="text" id="guanjian" value="" size="12" >
发件人:
<INPUT name="guanjian2" type="text" id="guanjian2" value="" size="12" >
收件人:
<INPUT name="guanjian3" type="text" id="guanjian3" value="" size="12" >
<INPUT type="submit" name="button" id="button" value="搜索" onClick="check();">
</FORM></TD>
ks_time.submit();

</script>

你在form ACTION属性给了一个 fhss.asp 然后提交选用的是submit按钮,submit 按钮是强制提交,不管form内的input值如何,并且强制将页面转向action所指向页面,这个是不能改变的.
所以你必须将当前页面的url 传给下一个页面 即fhss.asp页面 fhss.asp接收这个url值 再跳转回来
不过按照你的需求 其实你只需要写一个验证函数就ok了 即时间验证的,然后将此验证函数放到
结束时间: <INPUT name="Endtime" type="text" id="Endtime" value="" size="12" onClick="getDateString(this,oCalendarChs)" readonly=""> 的onblur事件里面
其他的事情交给input 自带的正则验证就OK了
如在开始时间
<INPUT name="Starttime" type="text" id="Starttime" onClick="getDateString(this,oCalendarChs)" value="" size="12" readonly="">

结束时间
<INPUT name="Endtime" type="text" id="Endtime" value="" size="12" onClick="getDateString(this,oCalendarChs)" readonly="">
加上
msg="时间不能为空" datatype="limit" min="1" 这三个属性

submit按钮不要给任何操作,其他不要改追问

我没用过onblur事件,能不能给出详细的代码啊
你说要把当前url值传到下一个页面,再跳转回来,这个不太懂
十分感谢啦

参考技术A 把提交按钮类型换成button,check()里面实现Ajax提交表单,返回换成return false; 参考技术B return false 试试追问

试过了,不好用

js 提交的表单后如何在本页面接收返回值

我这个是要在html页面上写的,调用的是asp里面的内容。a.html提交表单数据到a.asp中,返回的数据在a.asp中显示,但是我想要它在我提交的a.html页面上读取到数据。

ajax 做表单提交, 同时也能获得服务器返回的状态信息,不过原生的ajax过于繁琐建议使用 jquery来做  比如

$.get(url,function(data)
alert(data);
);
<!-- data就是你获得的返回信息-->

参考技术A 你可以把a.asp通过框架嵌入到a.html里面啊

或者你也可以采用ajax技术来处理
参考技术B 你的描述就是说的ajax功能,你可以去学学ajax专门解决这个问题,如果是用jquery+asp,是非常简单的。追问

有具体的方法说明嘛?之前没有接触过asp,因为工作需要。没办法!

追答

本例中子需要下jquery命名为jquery-1.6.2.js放于同级目录,一下两个网页均位于同级目录
t.html

t7

$(document).ready(function()
$("#send").click(function()
alert("input content is: "+$("#ct").val());
$.get("recevie.asp",Action:"get",t:($("#ct").val()),function (data,textStatus)
alert("return content is: "+data);
);
);
);

recevie.asp

本回答被提问者采纳

以上是关于在asp中使用js,但不能返回提交的页面 return没有起作用,总是弹出alert框后跳到下一个页面,请教如何的主要内容,如果未能解决你的问题,请参考以下文章

提交到 ASP.NET 页面的 PDF 表单创建返回 HTML 文件

asp 表单中文本区输入大量文字提交后会出现HTTP 400错误,怎么解决。

js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)

$.ajax post提交的参数ASP接收不到

form表单提交没有跨域问题,但ajax提交存在跨域问题

在 ASP 页面中使用带有 Jquery 的 JS 函数