Vbscript asp应用程序按钮没有';无法正确执行并且不执行服务器调用

Vbscript asp应用程序按钮没有';无法正确执行并且不执行服务器调用,vbscript,asp-classic,Vbscript,Asp Classic,我正在开发一个经典的asp应用程序(我知道,这不是我的选择)。 我的表单中有一个按钮,应该根据用户输入的条件进行搜索 要给出一个基本结构,下面是它的外观: 单击按钮后,如表单action=“IncidentMain.asp”所示,在提交时,我调用一个函数,该函数实际上被正确调用 function checkform ( form ) { if (form.txtIncidentNumber.value == "") { alert( "Please Enter In

我正在开发一个经典的asp应用程序(我知道,这不是我的选择)。 我的表单中有一个按钮,应该根据用户输入的条件进行搜索

要给出一个基本结构,下面是它的外观:


单击按钮后,如表单
action=“IncidentMain.asp”
所示,在提交时,我调用一个函数,该函数实际上被正确调用

function checkform ( form )
{

    if (form.txtIncidentNumber.value == "") {
        alert( "Please Enter Incident Number" );
        form.txtIncidentNumber.focus();
        return false ;
    }
    alert("IM HERE");
    return true ;
}
所以它肯定通过这个函数,然后我有我的最后一段代码来实际执行搜索,这是:

<%
        IF Request.Form("txtaction") = "search" THEN
        'IT NEVER GETS HERE
        'SeLECT DATA FROM SQL SERVER
        End if
  %>

在表单中添加一个隐藏的
txtaction
输入字段。

如果您只想检查是否已提交搜索,那么方法可能会简单得多

Dim is_submit:is_submit=(Len(Request.Form&“”)>0)
如果你要提交的话
“我们有一个提交的邮件表单,可以做些什么。
如果结束
甚至,

Dim请求方法:请求方法=LCase(request.ServerVariables(“请求方法”)&)
如果请求\u method=“post”,则
“我们有一个POST请求(可能是表单提交)。
如果结束
存储隐藏的输入值只会使HTML变得混乱,在很多情况下是不必要的,当您还必须使用页面中的事件处理程序来更新它们时,您会增加额外的一层不必要的复杂性

然而,要使这些工作正常,你必须有一些东西来包含搜索,最简单的表单应该是这样的


表单缺少隐藏字段“txtaction”。添加字段并输入值=“搜索”。
然后删除本应这样做的javascript。

您的提交还使用
onclick
处理程序以编程方式触发输入更新,那么您如何保证在提交页面之前运行javascript呢?您发布的HTML结构中的
txtaction
输入在哪里?假设太多,请删除
IncidentMain.asp
中的
If
,只需使用
Response.Write()
检查提交内容。可能重复的
警报()
是否未触发?您还应该在
表单中定义
txtIncidentNumber
文本输入字段,脚本可能在后台出错,因为它找不到
表单.txtIncidentNumber
。检查您的web开发工具(通常是F12,取决于浏览器)。不知何故,它现在可以工作了。谢谢你的帮助谢谢你的回答。我正在努力解决这个问题,因为我还没有真正使用过经典的ASP。问题是,每个表单都有一行:基本上在提交按钮上,我希望它在运行实际的VB代码之前运行checkform(this)函数。这就是我奋斗的地方。有时,它会进入checkform(this)函数,该函数进行验证,但它从未命中vb代码。其他时候,它会点击vbCode,但不会点击checkform(this)函数。您应该仍然可以使用
onsubmit
处理程序。您不需要在图像输入按钮上点击
onclick
处理程序。您可以查看我的编辑吗。非常感谢。我真的不明白为什么它不起作用。我有另一个表格,我复制了这个特殊的表格。另一个有相同的代码,一切正常。这个不行
<form method="post" action="Incident.asp" name="frmuser" onsubmit="return checkform( this )">
     <input type="submit" value="Save / Submit" name="btnSubmit" 
     id="SaveButton"  >
</form>
<%
    if Request.Form("btnSubmit") ="Save / Submit" THEN