Asp.net mvc ASPNET MVC:在Javascript中检索非模型字段的字段Id

Asp.net mvc ASPNET MVC:在Javascript中检索非模型字段的字段Id,asp.net-mvc,asp.net-mvc-3,Asp.net Mvc,Asp.net Mvc 3,我在MVC视图中有两个字段。 一种是@Html.文本框(“txtFirstName”) 第二个是hidden-@Html.TextBoxFor(model=>model.FirstName,new{@type=“hidden”}) hiddenField用于发布目的(因为第一个文本框可以被禁用为times) 我的问题是如何在Javascript中检索第一个文本框的客户端ID??我可以通过“@Html.FieldIdFor(m=>m.FirstName)”轻松访问第二个文本框的客户端ID 客户端I

我在MVC视图中有两个字段。 一种是@Html.文本框(“txtFirstName”) 第二个是hidden-@Html.TextBoxFor(model=>model.FirstName,new{@type=“hidden”})

hiddenField用于发布目的(因为第一个文本框可以被禁用为times)

我的问题是如何在Javascript中检索第一个文本框的客户端ID??我可以通过“@Html.FieldIdFor(m=>m.FirstName)”轻松访问第二个文本框的客户端ID


客户端ID的前缀是modelName,我不想在Javascript代码中进行任何硬编码。

在这种情况下,它将是
txtFirstName

但您可以明确地设置它:

@Html.TextBox("txtFirstName", "some sample value", new { id = "txtFirstName" })
然后像往常一样访问它:

var value = document.getElementById('txtFirstName').value;
或者,如果您正在使用jQuery:

var value = $('#txtFirstName').val();

在这种情况下,它将是
txtFirstName

但您可以明确地设置它:

@Html.TextBox("txtFirstName", "some sample value", new { id = "txtFirstName" })
然后像往常一样访问它:

var value = document.getElementById('txtFirstName').value;
或者,如果您正在使用jQuery:

var value = $('#txtFirstName').val();

在Javascript中使用HTML帮助程序:

Javascript和Razor:

var textboxId = '@Html.IdFor(m => m.FirstName)';
有几个扩展:

@Html.IdFor(m => m.FirstName)
@Html.NameFor(m => m.FirstName)
下面是HTML助手方法的完整列表


祝你好运

在Javascript中使用HTML帮助程序:

Javascript和Razor:

var textboxId = '@Html.IdFor(m => m.FirstName)';
有几个扩展:

@Html.IdFor(m => m.FirstName)
@Html.NameFor(m => m.FirstName)
下面是HTML助手方法的完整列表


祝你好运

实际上是ModelName\u txtFirstName,但正如你提到的通过对象htmlAttributes显式设置它的工作方式..谢谢实际上是ModelName\u txtFirstName,但正如你提到的通过对象htmlAttributes显式设置它的工作方式..谢谢