Изменить текст кнопки по клику с условием
Моя цель состоит в том, чтобы иметь кнопку со значением по умолчанию "Блок", и когда пользователь нажимает на нее, она изменит текст на "Разблокировать", а также после обновления страницы текст кнопки должен остаться прежним, если текст затем будет изменен на "разблокировать". после обновления он должен оставаться разблокированным.
То, что я пробовал до сих пор, это:
Посмотреть код для кнопки:
input type="submit" value="@ViewBag.SubmitValue" id="Block" style="color: white;
background-color: darkred; border-bottom-left-radius: 2px; border-bottom-right-radius: 2px;
border-top-left-radius: 2px; border-top-right-radius: 2px; padding: 4px 4px;
border: none; padding-bottom:2px "
Контроллер ActionResult
public ActionResult Block(int Id, Block block, string userAction)
{
if(userAction == "Block")
{
ViewBag.SubmitValue = "Block";
}
if (userAction == "Unblock")
{
ViewBag.SubmitValue = "Unblock";
}
.....
}
У меня есть проблема в этой передаваемой строке userAction в ActionResult, значение userAction в методе передается как нулевое значение, поэтому текст кнопки не меняется и на кнопке отображается "Отправить"
Пожалуйста помоги
1 ответ
Используйте скрытый элемент ввода с именем "userAction" и установите его значение на то, что вам нужно.
<input type="hidden" name="userAction" value="@ViewBag.SubmitValue">
и для действия по умолчанию установите инициализированное значение userAction следующим образом:
public ActionResult Block(string userAction = "Block", int Id, Block block){
//...
}
всякий раз, когда вы передаете ничего с именем userAction, он будет установлен на "Блок", не ноль