我在MVC视图中有2个字段。 一个是@Html。 TextBox (“txtFirstName”) 第二个是隐藏的 - @Html。 TextBoxFor (model => model.FirstName,new {@type =“hidden”})
hiddenField用于发布目的(因为第一个文本框可以被禁用)。
我的问题是如何在Javascript中检索第一个文本框的客户端ID?我可以通过'@ Html.FieldIdFor(m => m.FirstName)'轻松访问第二个文本框的客户端ID
客户端ID的前缀是modelName,我不想在Javascript代码中进行任何硬编码。
答案 0 :(得分:4)
在这种情况下,它将是txtFirstName
。
但你可以明确地设置它:
@Html.TextBox("txtFirstName", "some sample value", new { id = "txtFirstName" })
然后像往常一样访问它:
var value = document.getElementById('txtFirstName').value;
或者如果您使用的是jQuery:
var value = $('#txtFirstName').val();
答案 1 :(得分:1)
在Javascript中使用HTML帮助:
Javascript&剃刀:强>
var textboxId = '@Html.IdFor(m => m.FirstName)';
有几个扩展名:
@Html.IdFor(m => m.FirstName)
@Html.NameFor(m => m.FirstName)
以下是HTML帮助程序方法的完整列表http://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper_methods(v=vs.108).aspx
祝你好运