1

我有一个简单的网站,只有 1 个页面,其中的表单只有 1 个字段和一个提交按钮。

它要求提供电话号码并使用表单中捕获的电话号码的值调用存储过程。提交后,它会反馈用户说该号码已提交,并停留在页面上,以便用户输入另一个电话号码。

所以我创建了一个如下所示的 cshtml 文件:

@{
string pn=Request.Form["pn"]
and then my code to call the stored procedure with pn as a parameter
}

我遇到的问题是,当我转到此页面时,服务器端会抛出一个错误,指出存储的 proc 需要一个未提供的参数。

因此,我想创建一个 JavaScript 函数,该函数将运行onload页面,如果pn有一个值,它将只调用存储的过程。

我该怎么做,我应该在哪里放置代码(JS在@{}块内?)

顺便说一句,截至目前,我有 2 页。第一个,没有任何服务器端代码,第二个是副本,加上服务器端代码。

4

1 回答 1

1

首先,您不需要 JavaScript 函数来验证您的输入客户端,而是需要一个服务器端代码来测试表单是否已提交以及您的字段中是否有有效值。

就像是:

@{
    if (IsPost)
    {
        string pn=Request.Form["pn"];
        if (!string.IsNullOrEmpty(pn)){
            /* your code to call the stored procedure */
        }
    }
}

如果您想深入了解这个主题,请查看本教程:在 ASP.NET 网页 (Razor) 站点中使用数据库简介

于 2013-01-16T22:01:59.557 回答