Как установить Id для EditorFor () HTML помощник в ASP.NET MVC3 - PullRequest
1 голос
/ 21 декабря 2011

Я использовал это для переопределения идентификатора, сгенерированного фреймворком
@Html.EditorFor(model => model.cost, new { id = "checkCost" })
Но, к сожалению, идентификатор не меняется. т.е.
Когда я использую
string d = Request.Form["checkCost"];
при действии контроллера строка, заполненная нулевым значением.
ПОЧЕМУ ?? Я также заменил EditorFor на TextBoxFor, но ничего не изменилось, тогда контроллер также берет стоимость как ID

<td >
        @Html.DropDownList("check_master", "--select package--")
    </td>
    <td >
        @Html.EditorFor(model => model.check_name)
        @Html.ValidationMessageFor(model => model.check_name)
    </td>
    <td >
        @Html.EditorFor(model => model.cost, new { id ="checkCost" })
        @Html.ValidationMessageFor(model => model.cost)
    </td>



Обновлен: 1010 *
*

  • Это мой частичный вид, и мой основной вид (частичный рендеринг из ajax.actionLink) также содержит EditorFor (model => mode.cost)
  • Частичное представление строго типизировано для таблицы Check_master, а основное представление строго типизировано для package_master, где оба entitySet содержат одно и то же свойство имени, то есть «COST». Во-вторых, и частичное, и основное представление содержат EditorFor «стоимость»

    I попытался изменить имя свойства check_master как на
  • [Колонка ( "check_cost")]

общедоступная стоимость Nullable {get; задавать; }
Но не знаю, почему это не работает, т. е. свойство naem не меняется при обращении к нему как

model.something 

Ответы [ 2 ]

0 голосов
/ 07 декабря 2016

Чтобы конкретно ответить на заданный вопрос, попробуйте это:

@Html.EditorFor(model => model.cost, new { @id = "checkCost" })

Обратите внимание на небольшую (но важную) разницу: ... new {@id = "checkCost"})

0 голосов
/ 21 декабря 2011

Создайте 2 модели представления со свойствами CheckCost и PackageCost таким образом, что существует разделение:

public class CheckViewModel{
   public string CheckCost{get;set;}
}

public class PackageViewModel{
   public string PackageCost{get;set;}
}

Таким образом, избегайте конфликтов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...