ASP.NET MVC Ajax:如何单击更新 Ajax.ActionLink 本身

发布于 2024-08-02 20:30:27 字数 299 浏览 7 评论 0原文

我有一个页面,显示一个包含大量元素的列表,每个元素都有一个布尔属性,代表启用和禁用状态。

我需要为用户提供每个列表项的链接,并且链接文本必须显示相反的状态(因此,如果该项目已启用,则链接文本必须显示“禁用”)。

当用户单击“已禁用”的链接时,该项目的相应链接文本必须更改为“启用”(反之亦然)。

我不想为每次点击重新加载整个列表,而只是加载 ActionLink 本身的文本,所以我的问题是:

当用户单击链接时是否可以仅更新 ActionLink 本身,或者我是否必须使用以下方法处理此问题自定义 JavaScript?

I have a page that displays a list with a of elements with a large number of elements, each of which has a boolean property, representing an Enabled and a Disabled state.

I need to provide the user with a link for each list item, and the link text must show the opposite status (so if the item is enabled, the link text must display 'Disable').

When the user clicks the link for a Disabled, the corresponding link text for the item must change to 'Enable' (and vice versa).

I would like to NOT reload the entire list for each click, just the text of the ActionLink itself, so my question is:

Is it possible to update just an ActionLink itself when the user clicks the link, or do I have do handle this using custom javascript?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

迷你仙 2024-08-09 20:30:27

据我记得,您可以通过新建一个匿名类作为大多数重载的最后一个参数,将 HTML 属性添加到“a”标记中。

在我的脑海中,这可以写成如下:(

Html.ActionLink("Name", "Action", "Controller", new { @class = 'updateId' });

您可能可以使用 ID 来完成此操作,这比类更好 - 如果不只是使用唯一的类名来避免更新多个项目。)

然后您可以使用javascript访问“updateId”类并更改内部html。

对于 jQuery:

$("a.updateId").html("NewName");

As far as I remember, you can add HTML attributes to the "a" tag by newing up an anonymous class as the last param on most overloads.

Off the top of my head this can be written like the following:

Html.ActionLink("Name", "Action", "Controller", new { @class = 'updateId' });

(You may be able to do this with an ID which would be preferable over a class - if not just use a unique class name to avoid updating multiple items.)

Then you can use javascript to access the class "updateId" and change the inner html.

In the case of jQuery:

$("a.updateId").html("NewName");
厌味 2024-08-09 20:30:27

这可以通过要更新的元素中包含的自定义用户控件来完成。 解决方案的文章可以在此处找到。不需要自定义客户端脚本。

This can be done with a custom user control contained within the element to update. A writeup of the solution can be found here. No custom client-side scripting is necessary.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文