Я думал, что это будет намного проще, чем было. Мне нужно извлечь данные из ячейки в моем datatable (что я могу сделать), а затем отправить его через форму со скрытым полем, чтобы передать переменную в действие в моем контроллере.Формирование формы со скрытым вводом и отправкой на действие
Я делаю что-то похожее на это в моем коде, за исключением создания формы.
Я пробовал разные методы и не имел значения, что, когда я получаю доступ к коллекции в своем действии, значение равно null.
My View Функция:
$('#myTable').on('click', 'td', function() {
var serial = table.cell(this).data();
var form = $('<form action="@Url.Action("status")" id="hiddenform"><input type="hidden" id="serial" name="serial" value=""></form>').appendTo('body');
$('.serial').val(serial);
form.submit();
});
и мой контроллер я разбора:
//Accept GET and POST
[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
public ActionResult Status(System.Web.Mvc.FormCollection collection)
{
string serial = collection["serial"];
if (serial == null || serial == "")
System.Windows.Forms.MessageBox.Show("Error: Serial is NULL");
return View(serial);
}
Чтобы быть честным, я разделывали мой код много в попытке исправить это, так это выглядит довольно ужасно.
Любая помощь будет оценена по достоинству.
Я получаю сообщение об ошибке: Serial NULL появляется каждый раз в моем контроллере. Однако, если я тестирую JQuery, значение не равно null, оно возвращает правильное значение.
'$ Вэл (серийный),' после этого попытаться триггером («последовательный.»). событие изменения, поскольку вы используете значение с помощью кода, а не как пользовательский ввод. '$ ('. serial'). trigger ('change');' – Manish
@Manish Значение после этого не изменяется. –