Вызвать код за функцией C # из JavaScript - PullRequest
2 голосов
/ 03 апреля 2012

Я знаю, что об этом спрашивали, но ни один из многочисленных ответов не подходит к моей ситуации. Поэтому я смиренно спрашиваю, может ли кто-нибудь снова осторожно провести меня через это.

Среда: веб-приложение .Net 4, использующее c #, javascript, jquery, sql server и Entity Framework.

Вопрос. Мне нужно иметь возможность разрешить пользователю «быстро добавлять» значение в таблицу, привязанную к раскрывающемуся списку, без потери значений, которые пользователь уже ввел на текущей странице. Мне все равно, нужно ли мне делать обратную передачу или использовать jquery или использовать ajax и т. Д. Сначала мне нужна функциональность - красивость позже ... сценарий описан ниже, если вы хотите продолжать читать. Учитывая все это, я бы хотел, чтобы это было гладким и не "неуклюжим" для пользователя.

Сценарий: У меня есть страница, на которой пользователь может вводить много информации в текстовые поля, статические раскрывающиеся списки и раскрывающиеся списки, связанные с другими таблицами, которые будут объединены и вставлены в одну таблицу. Ну, это никогда не дает сбоя, пользователь может заполнять страницу, и когда он попадает в одно из выпадающих списков, связанных с таблицей, - значение отсутствует или он еще не добавил что-то еще. Я хотел бы добавить кнопку или ссылку или что-то рядом с этим раскрывающимся списком, который позволил бы пользователю «быстро добавить» элемент в таблицу, которая заполняет это раскрывающееся окно, а затем обновить раскрывающийся список, чтобы они могли выбрать это новое значение из списка ... все без потери других данных на экране, который они уже ввели.

Что я пробовал: -Пробовал вариант WebMethod. В настоящее время эта веб-страница вызывает некоторые настраиваемые методы «связывания» в коде, чтобы заполнить выпадающие списки, чтобы они не заполнялись непосредственно из объектов из структуры сущностей. Таким образом, это означает, что использование статического метода не будет работать для решения, потому что часть статической функции должна будет вызывать метод связывания, чтобы обновить раскрывающийся список с недавно вставленными значениями.

- Опция PageMethod. В некоторых других примерах использовались настройки метода страницы, но на моем сайте используются главная страница и страницы с контентом, и в публикациях, похоже, указано, что маршрут метода страницы не работает.

Имеет смысл?

1 Ответ

0 голосов
/ 03 апреля 2012

Добавьте UpdatePanel на страницу.Панель обновлений должна обернуть раскрывающийся список для добавления, а также текстовое поле / кнопку для добавления новой записи в этот раскрывающийся список.Возможно, вы захотите иметь разные UpdatePanel для каждой пары раскрывающихся списков / кнопок, если это применимо.

Когда они нажимают кнопку внутри панели обновления, вы можете прочитать текстовое поле, добавить дополнительный элемент в раскрывающийся список иотправить обновление в базу данных.(Я бы вручную добавил новое значение в выпадающий список, а не обновлял базу данных и, если возможно, перепривязывал, но это может быть не так.)

Волшебство UpdatePanels гарантирует, что это всеасинхронный и поэтому не мешает пользователю, работающему на странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...