Html.DropDownListFor в JavaScript - PullRequest
       3

Html.DropDownListFor в JavaScript

0 голосов
/ 04 января 2019

Я отображаю Html.DropDownListfor в моем JavaScript, а затем, когда захожу в браузер, чтобы проверить, как выглядит Output, и я вижу, что есть дополнительные двойные кавычки.
Как я могу архивировать это лучше? Заранее спасибо:)

Вывод выглядит так:

<select class="&quot;form-control" border-input&quot;="" data-val="&quot;true&quot;" data-val-number="&quot;The" field="" selectedrmatype="" must="" be="" a="" number.&quot;="" id="&quot;SelectedRMAType&quot;" name="&quot;SelectedRMAType&quot;" style="&quot;background:none;&quot;"><option value="&quot;&quot;">- Vælg årsag -</option>
<option value="&quot;1&quot;">Forkert vare bestilt (fejlbestilling)</option>
<option value="&quot;2&quot;">Forkert vare modtaget (fejllevering)</option>
<option value="&quot;3&quot;">Modtaget for meget/lidt (fejllevering)</option>
<option value="&quot;4&quot;">Vare fysisk skadet ved modtagelse (transportskade)</option>
<option value="&quot;5&quot;">Vare virker ikke ved modtagelse (første dag)</option>
<option value="&quot;6&quot;">Defekt vare (efter første dag)</option>
<option value="&quot;7&quot;">Prisfejl</option>
<option value="&quot;8&quot;">Andet</option>
</select>  

DropDownlistfor:

 @Html.DropDownListFor(s => s.SelectedRMAType, Model.RMAType, "- Select -", new { @class = "form-control border-input", @id = "SelectedRMAType", @style = "background:none;" })

DropDownListFor в JS:

 rows += '<td>' + '@Ajax.JavaScriptStringEncode(Html.DropDownListFor(s => s.SelectedRMAType, Model.RMAType, "- Select -", new { @class = "form-control border-input", @id = "SelectedRMAType", @style = "background:none;" }).ToHtmlString())' + '</td>'

Контроллер:

public  ActionResult FindRMA(RMAHistory oodvm) {

    oodvm.RMAType = new SelectList(data.RMAType, "ID", "RMASager").ToList();

    return View(oodvm);
}

ViewModel:

public List<SelectListItem> RMAType { set; get; }
public int? SelectedRMAType { set; get; }

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Не могли бы вы попробовать это;

@Html.DropDownListFor(m => m.RMAType).Select(i => new SelectListItem { Text = i.YourListValue(), Value = i.YourListKey() }))
0 голосов
/ 04 января 2019

Попробуйте изменить

@Ajax.JavaScriptStringEncode(...)

до

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