我有一个局部视图,如下所示
<%= Html.DropDownListFor(m => m.SelectedProductName, Model.ProductList, "Select a Product") %>
现在,您可以创建新产品并编辑现有产品。编辑和创建都使用相同的表单。在加载时,创建在主页上。编辑在jQuery UI模型对话框中弹出,并呈现一个新的局部视图。
因此,就页面而言,我有两个具有相同"id“的下拉框,这是不好的,因为它们应该是唯一的。那么我该如何更改id呢?那么,当加载编辑时,它的id可能是"editSelectedProductName"?
我试着在视图模型中这样做。
public string SelectedProductName{ get; set; }
ViewModelConstructor()
{
SelectedProductName = "EditSelectedProductName";
}
但它似乎并不在意,一直使用"SelectedProductName“作为产品名称。
发布于 2010-05-16 10:06:00
目前我找不到文档,但是DropDownListFor有一个重载,它将接受一个对象类型的属性集合(HtmlAttributes是参数名)。
它看起来像这样:
Html.DropDownListFor(model=>model.SomeProperty, new {@id="UniqueID1234"});
您可以使用智能感知来查找包含HtmlAttributes的重载。
发布于 2012-04-18 22:05:08
您可以使用硬编码的jQuery:
$('select#[id of your select box]').attr('id', '[id that you want]');
https://stackoverflow.com/questions/2842342
复制相似问题