Как называть функцией язык сценариев JavaScript с Asp. Net Mvc?

Mesecito призывать функцию JS с моего драйвера перемещая его целую стоимость, специально то, что я стараюсь делать, состоит в том, чтобы устанавливать стоимость выбора DropDownList.

Попробуйте это, но оно я не функционирует...

Код C#

  int filter = Convert.ToInt32(Request.Form["Filtro"]);
  ViewBag.Info = null;
  var informacionCountContractsFilter = _IContractsApiConsumer.InformacionConteoContratoFiltro(1, 2, filter);
  ViewBag.Info = informacionCountContractsFilter;
  ViewBag.Filtro = filter;

Код JS

<script type="text/javascript">
    @ViewBag.Filtro;

    function SetSelectFilter() {
        document.getElementById("Filtro").selectedIndex = @ViewBag.Filtro;;
    }
</script>

Html

  <div class="search_categories">
                <div class="select">
                    <form method="POST" action="Index">
                        <select name="Filtro" id="Filtro" class="Filtro">
                            <option value="1">Special</option>
                            <option value="2">Cloud</option>
                            <option value="3">Active</option>
                            <option value="4">Inactive</option>
                        </select>
                        <input type="submit" value="Filter Proyects" class="btn" />
                    </form>
                </div>
            </div>
0
задан 11.03.2019, 02:03
2 ответа

1 В HTML призвал функцию js имени SetSelectFilter в событии onLoad

<body onload="SetSelectFilter()">
</body>

2 В js объявил изменчивая фильтр и я написал функцию SetSelectFilter, где я распределяю стоимость этой select:

<script>
    let filtro = @ViewBag.Filtro;
    $('Filtro').val(filtro);

    function SetSelectFilter() {
        document.getElementById("Filtro").selectedIndex = filtro;
    }
</script>

3 В моем драйвере распределил Viebag. Выдал стоимость для setear Select

//my code *********EEMC******
                    _IContractsApiConsumer.SetAuthHeader(_tokenManager.Token);
                    string t = Request.Method;
                    **ViewBag.Filtro = 0;**
                    if (Request.Method == "GET")
                    {
                        ViewBag.Info = null;
                        var informacionCountContracts = _IContractsApiConsumer.InformacionConteoContrato(1, 2);
                        ViewBag.Info = informacionCountContracts;
                    }
                    else if (Request.Method == "POST")
                    {
                        int filter = Convert.ToInt32(Request.Form["Filtro"]);
                        ViewBag.Info = null;
                        var informacionCountContractsFilter = _IContractsApiConsumer.InformacionConteoContratoFiltro(1, 2, filter);
                        ViewBag.Info = informacionCountContractsFilter;
                        **ViewBag.Filtro = filter - 1 ;**
                    }
  //***************************************
0
ответ дан 19.11.2019, 22:20

Я вижу, что ты используешь этикетку рукописный шрифт и на сервере ты распределяешь стоимость в ViewBag asГ - что мы получим эту стоимость и это будем сохранять в переменной в javascript:

<script type="text/javascript"> 
let filtro = '@ViewBag.Filtro'; 
function SetSelectFilter() { 
  document.getElementById("Filtro").selectedIndex = filtro;
} 
SetSelectFilter();
</script>

Имей в виду, что funcionarГЎ только, когда ты распределишь стоимость @ViewBag.Filtro в action, который показывает твою страницу, так как эта стоимость распределяет сервер перед тем, как загружать страницу потом нагруженная, он не может устанавливать это.

1
ответ дан 19.11.2019, 22:20
  • 1
    Вот то, что nesecito когда VieBag. У фильтра была стоимость я это распределил в Select... Я тестирую твой ответ и комментирую тебе –  Efrain Mejias C 11.03.2019, 03:02
  • 2
    Который возвращает этот có я говорю c# а именно action –  denifer santiago fernandez 11.03.2019, 03:07
  • 3
    возвращает вид с моделью. return View (model); –  Efrain Mejias C 11.03.2019, 03:22
  • 4
    ¿ Ché я буду видеть, ты funcionó? –  denifer santiago fernandez 11.03.2019, 03:23
  • 5
    Оно я не функционирует... :( –  Efrain Mejias C 11.03.2019, 03:30