#javascript #c# #web
#javascript #c# #веб
Вопрос:
Я очень новичок в веб-разработке и смущен отправкой данных моей формы. Я знаю, как отправлять и извлекать данные при использовании тега в моем html и переносе в в , но в этом случае у меня есть статическая HTML-страница, отображающая данные в таблицах, где пользователь может редактировать и модифицировать ввод таблицы. Как мне опубликовать значения в этой форме, если ни одно из полей не имеет типа input?
Комментарии:
1. вы можете создать скрытые поля ввода во время выполнения с помощью javascript и добавить их в элемент формы или использовать ajax
2. Вы можете использовать Ajax для отправки данных на сервер. Мне просто любопытно, если у вас нет элементов «ввода», были ли сохранены ваши данные? Можете ли вы получить доступ к этим данным из JS? Если вы можете, выполнение запроса ajax (или даже использование fetch api, если вы ориентируетесь на современные браузеры) должно быть легко достижимым.
Ответ №1:
Вы можете публиковать данные формы с помощью javascript, если вы генерируете данные на лету. В jQuery есть функция Ajax, которая упрощает этот процесс. Например.,
function post_form_data() {
var data = {
data1: "something,
data2: "something else"
};
var url = "https://someurl.com/api/v1/etc";
$.ajax({
type: "POST",
url: url,
data: data,
success: function() {
// do something, like transition to
// a different page or something
},
});
}
Вызывайте post_form_data() всякий раз, когда вы хотите опубликовать. На практике вы можете включать данные формы в параметры функции или извлекать их из других источников.
Чтобы увидеть все подробные инструкции по ajax, пожалуйста, ознакомьтесь с документацией jQuery Ajax.
Ответ №2:
Нажав на кнопку javascript, вы можете создать форму и отправить ее:
let form = document.createElement('form');
form.action = 'http://yourdomain/youraction';
form.method = 'POST';
form.innerHTML = '<input name="inputs" value="test">';
// the form must be in the document to submit it
document.body.append(form);
form.submit();
Вместо проверки входного значения укажите здесь значение JSON.
Это приведет к отправке формы по указанному URL.
Надеюсь, это поможет.