【问题标题】:classic asp multiple button click经典asp多按钮点击
【发布时间】:2012-12-12 17:09:19
【问题描述】:

我有 2 个 asp 页面。

  • Feedback_Administration_Update.asp
  • Feedback_Administration.asp

我的 HTML 表单:

<form ACTION="Feedback_Administration_Update.asp" METHOD=POST NAME="form">
  <input type="button" value="Submit" onclick="javascript:Checkit();" name="btnSubmit">
  <input type="reset" value="Reset" onclick="javascript:document.location=location">
  <input type="button" value="Send Response to Requester" name="btnSubmit" onclick="javascript:Checkit();"/>
</form>

Feedback_Administration_Update.asp 文件中的代码:

dim buttonPressed
buttonPressed=Request.Form("btnSubmit")
select case buttonPressed
    case "Submit"
        'update database code 
        Response.Redirect "feedback_administration.asp?ID=" & regEx.Replace((request.form("ID")), "''") & "&lstPages=" & Trim(Request("lstPages")) & "&view=" & Request("view")& "&strSuccess1=" &"Success"
    case "Send Response to Requester"
        'mail  task code 
End Select

我不确定他们为什么不点击任何按钮。

当我点击提交页面时,它应该更新代码,当我点击提交时向请求者发送响应,它应该发送电子邮件。

【问题讨论】:

    标签: asp-classic


    【解决方案1】:

    按钮输入的值不会发送到服务器。你需要使用普通的提交按钮,并且有验证码你可以取消他们的onclick事件:

    <input type="submit" value="Submit" onclick="return Checkit();" name="btnSubmit" />
    <input type="submit" value="Send Response to Requester" name="btnSubmit" onclick="return Checkit();" />
    

    要使其正常工作,请以两种方式更改您的 JavaScript 函数。首先,不要让它提交表单,其次让它在成功验证时返回true,否则返回false,例如:

    function Checkit() {
        //validate your stuff..
        if ([all is good]) {
            //don't submit the form here, the submit button will do that.
            return true;
        }
    
        //indicate that something was wrong, cancel form submission:
        return false;
    }
    

    设置此选项将导致Request.Form("btnSubmit") 保持所需的值。

    【讨论】:

    • 谢谢,是的,我必须将按钮类型更改为“提交”而不是按钮类型。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多