首页 > 解决方案 > runat="server" 和 vb.net 页面上的多种形式

问题描述

我有一个显示公司员工信息的页面。该列表分为 3 组。每个组都有一个添加按钮和一个编辑按钮。这些按钮在模态窗口中调用相应的子窗体。

由于表单是在 vb.net 中构建的并使用 ASP 对象,因此它们需要将表单包装在具有 runat="server" 的表单中。我无法将 run at server 指令添加到 6 个子表单的表单标签中的每一个,因为我每页只能有一个 runat="server" 。

为了解决这个问题,我将指令添加到包装页面主体的表单元素中。现在,由于嵌套的表单元素,我遇到了错误。我该如何解决这个问题?

<body>
<form runat="server">

    <form id="popup1">
    </form>

    <form id="popup2">
    </form>

    <form id="popup3">
    </form>


    <form id="popup4">
    </form>


    <form id="popup5">
    </form>


    <form id="popup6">
    </form>

</form>
</body>

我读到了表单元素获取表单属性,该属性将元素与特定表单联系起来,例如 form="form1" 等等。但我不确定这是否适用于我的情况,因为有些人可能会尝试使用不支持表单属性的 Internet Explorer。

我在想我只需要为我的页面创建一个模式表单,为所有六个表单添加所有元素,然后根据按下的按钮使用逻辑来显示/隐藏元素。问题是表单使用asp元素在服务器端呈现,而按钮按下是客户端。我可以使用一些 javascript 来处理这个问题,但事情可能会变得一团糟。此外,表单可能会加载数据或不加载数据,具体取决于按下的按钮是添加员工还是编辑员工。

也许我应该在不使用 asp 对象的情况下创建 6 个模态表单并坚持使用 HTML 对象。这否定了使用 ASP 的正则表达式验证器,但我对此表示满意。

标签: htmlasp.net

解决方案


推荐阅读