0

我被迫在我的项目中使用 Web 表单,遗憾的是,Web 表单只允许 - 如果可以的话 - 创建“严格”的网站。

每当您需要一个 Button 时,您需要将其放入一个表单中,然后您需要另一个与前一个按钮无关的按钮,并且您不能有 2 个表单,

放置一个触发服务器端(C#)方法的DIV的想法有点困难,好吧它可能很容易,但我发现的只是“技巧”,而不是“官方”的干净方式。

所以我有这个想法,为我网站中的每个操作制作一个网页

例如:

假设我想点击提高这个问题评分的箭头,我会放这样的东西。

HTML

<a href="Rating.aspx?id=23&upOrDown=up" id="rateUpButton">Rate Up</a>

还有一些 CSS 代码使它看起来像一个漂亮的按钮......

好的,现在这将带我到一个名为Rating.aspx的页面,其中包含 2 个参数,第一个参数是我想提高其评级的问题的 ID,第二个参数是 UP (+rating) 或 DOWN(-评分)。

在 Rating.aspx 的 Page Load 方法中,我会更新数据库,然后重定向到问题页面。

这将完美地工作,但是,这是一个好方法吗?专业吗?(请记住,会有很多这样的动作......)

4

1 回答 1

0

使用 ASP.NET,您最好使用服务器控件。更好的实现方法是使用 or ,它实际上呈现你的锚标记。但是您可以将 OnClick 事件处理程序附加到此控件(链接按钮),因此单击后会自动 POST 到服务器。当前页面将发生相同的页面循环(这称为 PostBack),并且您的附加事件处理程序将触发,您实际上可以在其中对数据库进行更改。因此,您甚至不需要为此类任务创建任何其他页面。每个服务器控件都有特定的事件集,例如按钮的 OnClick 或下拉列表的 OnSelectedIndexChanged。您甚至可以创建自己的控件或从现有控件派生并创建自己的事件。

查看以下链接以获取更多信息:

按钮点击

ASP.NET 中的事件处理

ASP.NET 页面生命周期

于 2012-12-26T15:05:03.053 回答