jqGrid. добавить диалог
У меня есть jqGrid с некоторыми столбцами, я хочу добавить дополнительные поля в диалоге добавления, которые не отображаются в сетке, а отправляются в запросе. Как я могу сделать это функционалом?
2 ответа
Вы можете изменить диалог добавления внутри обработчика события beforeShowForm. Вы можете увидеть рабочий пример здесь. Этот пример я сделал как ответ на вопрос "jqGrid: отключить поля формы при редактировании" (см. Также закрытый вопрос "Как добавить простую текстовую метку в форму jqGrid?")
ОБНОВЛЕНО: Я перечитал ваш вопрос и увидел, что первоначально ответил на другой вопрос, который вы задали. То, что вам нужно, это просто использование параметра editData, который может быть, например, как
$("#list").jqGrid('navGrid','#pager',{del:false,search:false,refresh:false},
{}, // edit parameters
{ // add parameters
url: '/myAddUrl',
editData: {
someStaticParameter: "Bla Bla",
myDynamicParameter: function() {
return (new Date()).toString();
}
}
}
);
посмотреть демо Демонстрация не имеет ничего на стороне сервера, но вы можете легко проверить с помощью Fiddler или Firebug, что данные, отправляемые на сервер, содержат someStaticParameter
а также myDynamicParameter
параметры.
Это хорошо. Я голосую за это.
Это решение относится к тому, что я ищу. У меня есть таблица пользователей с типичным именем пользователя, паролем и т. Д. У меня также есть кнопка редактирования и добавления.
С точки зрения безопасности, не стоит отправлять всех пользователей вместе с их паролями. Таким образом, в форме редактирования администратор может редактировать только все, кроме пароля.
В форме добавления администратор может создать новую учетную запись с новым паролем. Так как поле пароля не существует в сетке, оно не будет отображаться в форме добавления. Следуя этому примеру, я могу добавить настраиваемое поле, не раскрывая пароли своих пользователей. Большое спасибо, Олег