heta.dave Ответов: 2

Как перенаправить на метод контроллера с 2 параметрами при нажатии кнопки


У меня есть кнопка предварительного просмотра. при нажатии кнопки предварительного просмотра я хочу отобразить вид. но при нажатии кнопки я должен передать два параметра как querystring. Но я не хочу отображать эти параметры в url-адресе. что такое другой путь?
Пожалуйста, помогите мне..

Что я уже пробовал:


функция GetId (tempid) {
var ProductId = getParameterByName ('productid');
var url = " .. / Template/GetDataForTemplete?TempleteID= "+ tempid + "& ProductID= " +ProductId;
окно.местоположение.href = url;

}







public ActionResult GetDataForTemplete(int templeteIDint ProductID)
{
EventViewModel model = новый EventViewModel();
модель = метода GetData ("Кодтовара");
if (TempleteID == 1)
{
return View ("Templete1", модель);
}
}

2 Ответов

Рейтинг:
2

F-ES Sitecore

Используйте форму

@using (Html.BeginForm("GetDataForTemplete", "Home", FormMethod.Post, new { id = "myForm" }))
{
    <input type="hidden" name="templeteID" id="templeteID" />
    <input type="hidden" name="ProductID" id="ProductID" />
    
    <input type="submit" value="Submit" />
}

<script type="text/javascript">
    function GetId(tempid) {
        // set the form variables to whatever you want
        $("#myForm #templeteID").val(tempid);
        $("#myForm #ProductID").val(2);
        // this code is getting called from the form submit so the form is
        // being submitted anyway.  If your code is called from a click event
        // you'll need to submit the form as below
        //$("#myForm").submit();
    }

    // I'm using the submit event of the form to run GetId, you
    // can use a different method if desired
    $(document).ready(function(){
        $("#myForm").submit(function(e){
            // pass your proper tempid
            GetId(1);
        });
    });
</script>


Рейтинг:
0

Member 11141733

вы также можете использовать ajax.
Сначала добавьте ajax CDN

& lt;тело>

в <тип входного="представить" значение="отправить данные" функция onclick="параметр redirecturl(данные1,данные2)"&ГТ;


< / body>

вы также можете взять данные из элемента с помощью jQuery id selector<a href="https://www.w3schools.com/jquery/jquery_ref_selectors.asp" & gt;jQuery Selectors</a> [< a href="https://www.w3schools.com/jquery/jquery_ref_selectors.asp" target= "_blank" title= "New Window">^ & lt;/a>]. Как только у вас есть передача данных
это в ajax вызове


в <предварительно&ГТ;&амп;ЛТ;скрипт тип="текст/JavaScript"&ГТ;&ЛТ;/пре&ГТ;

функция redirectUrl(parameter1, parameter2) {
var URL = url + ' / ' + parameter + '?EmpId= ' + parameter2;

$.Аякс({
url: URL,
типа: "вам",
успех: функция (данные) {
$('#partialView'). html(данные);
Загрузка ('close');
$('#divLoding'). скрыть();
$('#partialView'). show(500);
},
ошибка: функция (данные) { alert ("ошибка в перенаправлении()!!"); $('#divLoding'). скрыть(); }
});
}

в <предварительно&ГТ;&амп;ЛТ;/скрипт>&ЛТ;/пре&ГТ;