问题标签 [html-helper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3074 浏览

asp.net-mvc - 如何在 MVC 中使用 HtmlHelper 获取自定义 id 来呈现

使用ASP.NET MVC 代码的预览 4,例如:

仅输出:

有一个name用于回发的表单,但没有id用于 javascript 或标签 :-(

我希望将其更改为:

会工作 - 但相反我得到一个例外:

好像某个集合中的某个地方已经有一个 id - 我很难过!

任何感兴趣的人的完整例外如下(嘿 - 在这里附加文件不是很好吗):

0 投票
7 回答
57421 浏览

css - 样式化 HTML 帮助程序 ASP.NET MVC

如果我有这样的 HTML 助手:

如何应用 CSS 类?我必须将它包装在一个跨度中吗?还是我需要以某种方式利用助手的 HtmlAttributes 属性?

0 投票
7 回答
12085 浏览

asp.net - 来自母版页的 Html.RenderPartial 调用

这是一个场景:假设我有两个控制器负责显示不同类型的内容的站点 - 页面和文章。我需要将部分视图嵌入到我的母版页中,它将列出按某些条件过滤的页面和文章,并显示在每个页面上。我无法在我的母版页上设置模型(对吗?)。如何使用 Html.RenderPartial 解决此任务?

[编辑] 是的,我可能会为列出文章和页面创建单独的部分视图,但仍然存在我不能也不应该在母版页上设置模型的障碍。我需要以某种方式说“这里是页面”作为我的渲染部分和文章的参数。使用 masterpages 中数据库中的数据进行渲染的整个概念对我来说有点模糊。

0 投票
1 回答
5686 浏览

asp.net-mvc - ASP.NET MVC Preview 5 - Html.Image 助手已移动命名空间

Html.Image我们刚刚将 ASP.NET 从 Preview 3 更新到 Preview 5,并且在我们的 aspx 页面中遇到了 HtmlHelper 的问题。

似乎Html.Image已经从System.Web.Mvcinto移动了Microsoft.Web.Mvc,我们现在发现访问帮助器的唯一方法是向每个使用它的 .aspx 页面添加一个 import 语句。所有其他帮助程序都可以using System.Web.Mvc;在视图母版页的 C# 代码隐藏中访问,但是这个似乎需要<@Import Namespace="Microsoft.Web.Mvc">在每个 .aspx 页面中。

有谁知道解决这个问题的方法?

0 投票
8 回答
51645 浏览

asp.net-mvc - 带有 ASP.NET MVC Preview 5 的 Html.TextBox 条件属性

我有一个强类型的 MVC 视图控件,它负责用户可以在其中创建和编辑客户端项目的 UI。我希望他们能够定义ClientId创建时,但不能编辑,这将反映在 UI 中。

为此,我有以下行:

似乎无论我给 readonly 属性赋予什么值(甚至是“false”和“”),Firefox 和 IE7 都会将输入设为只读,这非常违反直觉。如果不需要,是否有一种很好的、​​基于三元运算符的方法可以完全删除该属性?

0 投票
10 回答
771824 浏览

c# - HTML.ActionLink 方法

假设我有一堂课

在不位于 Item 文件夹的页面上ItemController,我想创建一个指向该Login方法的链接。那么Html.ActionLink我应该使用哪种方法,应该传递哪些参数呢?

具体来说,我正在寻找方法的替换

已在最近的 ASP.NET MVC 化身中退役。

0 投票
3 回答
8601 浏览

asp.net-mvc - ASP.NET MVC Beta 1 - Html.RenderPartial 在哪里?

我只是在将我的 Preview 5 应用程序升级到 Beta 1 的过程中,并且在尝试呈现控件时,我几乎可以解决这个错误:

“System.Web.Mvc.HtmlHelper”不包含“RenderPartial”的定义,并且找不到接受“System.Web.Mvc.HtmlHelper”类型的第一个参数的扩展方法“RenderPartial”(您是否缺少 using 指令还是汇编参考?)

我的标记(在 .aspx 查看内容页面中)是:

我试过使用 Microsoft.Web.Mvc 但无济于事。有谁知道 Html.RenderPartial 去了哪里,或者我可以使用什么替代方案?

0 投票
5 回答
8561 浏览

asp.net-mvc - 为什么我的 HtmlHelper 扩展不起作用?

我正在构建一个 ASP.Net MVC 网站。我决定将 Web、模型和控制器分离到同一个解决方案中的不同项目中,这些项目相互引用,而不是在一个项目中包含所有内容。

引用是这样的:

Web ---[references]---> Controller ---[references]---> Model

现在我想向 HtmlHelper 类添加 2 个自定义方法——它们被称为“IncludeScript”和“IncludeStyle”。它们每个都接受一个字符串参数,并分别生成一个脚本或链接标签。

根据网络上的文档,我创建了一个扩展器类,并编写了这两个方法并编译了应用程序。

现在,当我进入 Public.Master 页面(这是我的主要母版页,也是我打算使用这些方法的地方之一)时,我可以输入如下代码:

<%= Html.IncludeScript("\js\jquery.js") %>

IntelliSense 采用 IncludeScript 方法并向我显示语法就好了。所以我希望一切都能正常工作。

但事实并非如此。

一切都可以编译,但只要我运行应用程序,就会从 Default.aspx.cs 的第 14 行收到以下运行时错误:

c:\\Projects\\PhoneReel\\PhoneReel.Web\\Views\\Shared\\Public.Master(11): error CS0117: 'System.Web.Mvc.HtmlHelper' does not contain a definition for 'IncludeScript'

这是发生错误的代码行:

httpHandler.ProcessRequest(HttpContext.Current);

任何想法这里可能出了什么问题?

0 投票
3 回答
681 浏览

asp.net-mvc - 实现 Html Helper 方法的更好方法?

我创建了一个 html 助手

其中第一个字符串是标签,第二个字符串是 URL。助手创建所需的 html(无序列表,第一个元素、当前元素、最后一个元素、死元素和分隔符等的一些类)所有工作都很好,但我通过创建一个 stringbuilder 来做到这一点,将所有 html 抽入其中并返回stringbuilder 的内容为字符串。

我认为在这个例子中它并不重要,但是如果一个 Html 助手正在大量生产 html 怎么办?没有办法将它推送到 Response.Write 而不是 stringbuilder 吗?

或者您有任何其他问题/改进?

0 投票
3 回答
7406 浏览

.net - 在 ASP.NET MVC 中测试 HtmlHelper

有没有办法(单元)测试我自己的 HtmlHelpers?如果我想要自定义控件(由 HtmlHelper 呈现)并且我知道该控件的要求,我该如何先编写测试 - 然后编写代码?有没有特定的(好的)方法可以做到这一点?

这值得吗?