设置 runat=server 时输入名称和 id 发生变化

2024-06-20

在我的表单中,我需要插入“文本”类型的不同输入。输入必须是带有名称和 ID 的 html 控件。因为我将此表单发送到外部网址。

对于验证,我在所有输入中执行 runat=server ,然后我可以使用 requiredfieldvalidator 。

但问题是,当我访问该页面后查看源代码时,名称和 ID 都已更改。 例如

<input id="first_name" class="formright" type="text" name="first_name" runat="server" />

更改为

<input name="ctl00$cphContent$first_name" type="text" id="ctl00_cphContent_first_name" class="formright">

我必须使用 html 控件,因为外部 postbackurl 会查看名称和 id 值来查找控件。所以我不能使用asp控件。这是因为我使用了带有 runat=server 的 html 控件

我很感激任何帮助


这是因为您正在使用母版页。

内容页中包含的控件采用基于母版页层次结构的动态 ID,以避免 ID 重复。

如果需要在客户端脚本中引用控件ID和名称,可以使用<%= first_name.ClientID %>.

如果您使用.NET4,您可以使用ClientIDMode="Static" http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientidmode.aspx使生成的 ID 保持一致,尽管这会带来 ID 冲突警告,例如在页面上使用同一用户控件的多个实例时。里克·斯特拉尔 (Rick Strahl) 概述了这些here http://www.west-wind.com/weblog/posts/54760.aspx.

但是,如果您使用 ASP.NET 验证器,那么一切都应该没问题。而不是使用 HTMLinput你应该使用ASP.NET 文本框控件 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.textbox.aspx:

<asp:TextBox id="first_name" runat="server" CssClass="formright" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设置 runat=server 时输入名称和 id 发生变化 的相关文章

  • 获取上下文菜单的控制

    我有一个如下所示的上下文菜单 A 1 2 3 选择 1 2 或 3 后 我需要访问调用上下文菜单的对象 意思是如果这是 textbox1 的上下文菜单 那么我需要访问该对象 我该怎么做 忘了说了 这是一个WPF应用程序 所以我使用 Syst
  • symfony2 选择单选框的默认值

    我的项目是使用 Silex 和 Symfony 组件 即表单组件 编写的 我尝试创建一组从类中构建的单选按钮 并且我想预先选择其中一个单选按钮 我创建这样的表格 form app form factory gt createBuilder
  • 找出用户属于哪些组

    我有一个刚刚创建的 Windows 用户帐户 以 XYZ 为例 此 XYZ 属于我在计算机管理 gt 本地用户和组中创建的用户组和自定义组 因此 在属性中我看到该用户属于 2 个组 现在我想获取这些组并显示它们 有什么建议么 我已经这样做了
  • 如何有条件地调用带有约束的泛型方法? [复制]

    这个问题在这里已经有答案了 Suppose I have an unconstrained generic method that works on all types supporting equality It performs pai
  • 将 ASP.NET 验证与 JQuery 结合起来的优雅方式

    如何最好地将 JQuery 与 ASP NET 客户端验证模型结合起来 我通常会避免实现 ASP NET 验证模型 因为它对于我正在做的事情来说总是显得大材小用 对于我现在正在开发的网站 我只是收集非关键用户数据 并且只需要一些基本的验证
  • .NET Core 应用程序在 Web 服务器上本地运行,但无法通过远程浏览器访问

    我有一个 ASP NET Core 1 1 Web 应用程序 已将其发布到远程服务器 我已经在 IIS 中设置了网站 如下所示这些说明 https learn microsoft com en us aspnet core publishi
  • 尝试获取类型 LogWriter、键“”的实例时发生激活错误?

    我有 ASP NET 网站 我添加了参考Microsoft Practices EnterpriseLibrary Logging dll到该网站 在 web config 文件中 定义如下
  • 如何在 Windows Server 上模拟 cron 作业?

    我在 Windows 盒子上运行 NET 我希望每晚午夜运行一个函数 当然 由于 HTTP 无状态并且 Windows 没有 cron job 类型的功能 据我所知 我要么必须每天晚上午夜亲自访问我的网站 要么只是等待用户访问该网站以依赖正
  • 使用 atoi() 对整数进行输入验证

    include stdafx h include
  • 为什么我可以将 COM 对象转换为错误的接口?

    我有一个 NET 程序 它与另一个进程中的 mshtml 对象进行交互 我写了一个小示例项目 https github com hakito ComCastExample从头来说明问题 在此示例中 我直接使用 COM 引用进行 mshtml
  • .net 垃圾收集器何时运行?

    当我调试 net 代码时 如何知道垃圾收集器何时运行 我不想控制垃圾收集器何时运行 我只希望能够知道它何时运行 我有一些代码资源不足 我知道资源没有被使用 我想知道 GC 何时运行以释放它们 哦 我想到的资源是来自 Sql 连接池的连接 而
  • 如何在 Visual Studio 2010 中增强 XAML 设计器?

    当我使用 XAML 设计器时 进入设计器和退出设计器是如此困难和缓慢 当我这样做时 Visual Studio 卡了一段时间 有什么方法可以增强 XAML 设计器和编辑器吗 Ant 保存 XAML 文件时非常慢 这通常意味着您可能有复杂的
  • asp.net usercontrol 中的 jquery UI 模态对话框:模态叠加仅在 UserControl 中的 Div 上

    我有一个包含 jQuery UI 对话框控件的 asp net 用户控件 一切都按预期工作 除了灰色透明覆盖层 使表单模式化 仅出现在触发对话框的表单下方的隐藏 div 上 是否可以将此覆盖定位到父 div 或者这不是正确的解决方案 我尝试
  • 后端验证轨

    如何验证文本列不包含网站 示例可以是 www google com google com http gooogle com http www google com https www google com https google com
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 使用 GROUP 和 SUM 的 LINQ 查询

    请帮助我了解如何使用带有 GROUP 和 SUM 的 LINQ 进行查询 Query the database IEnumerable
  • HTML:JavaScript:阻止表单提交并调用 Javascript 函数

    我想在按下表单中的提交按钮时进行 AJAX 调用 事实上我无法删除

随机推荐