Обновить данные в таблице при сохранении без ссылки sh (Ajax / JavaScript) - PullRequest
0 голосов
/ 20 января 2020

У меня есть следующая функция - функция прослушивания событий для кнопки. Когда кнопка нажата, вызывается эта функция, и она должна обновлять таблицу HTML. Он делает это правильно, но не до тех пор, пока пользователь не обновит страницу. Что я должен изменить во внешнем интерфейсе, чтобы обновления таблицы происходили сразу после нажатия этой кнопки, вместо того, чтобы заставлять пользователя обновлять sh страницу? Спасибо!

function dialogWindowSaveAddressBookEditsButton_Click(addressBookObject) {
$.ajax({
    type: "POST",
    url: "/Services/AsyncServices.svc/DialogWindowSaveAddressBookEditsButton_Click",
    contentType: "application/json",
    data: JSON.stringify(addressBookObject),
    success: function (result) {
        if (result.d == false) {
            ...
        }
        else {
            ...
        }
    }
});
}

Ответы [ 3 ]

0 голосов
/ 20 января 2020

Когда вы вызываете запрос ajax, вы должны обработать его ответ и соответственно обновить DOM. Если запрос возвращает HTML, то вы можете просто отобразить его в любом элементе, который вам нужен, например:

$(‘#element).html(response)

Если он возвращает JSON, то вы должны установить значения соответственно элементы DOM, используя Jquery:

$(“.your-table or td”).text(resp.value)

0 голосов
/ 20 января 2020

Я решил проблему, добавив в свойство success следующее:

location.reload(true);
0 голосов
/ 20 января 2020

У вас есть результат вашего почтового запроса - вам нужно отформатировать его, а затем установить таблицу html (или какой-либо другой компонент) для отображения этих данных.

Вы не предоставляете достаточно информации ( вы используете какой-либо фреймворк или просто чистый javascript), поэтому я бы посоветовал вам посмотреть, как работает привязка данных для веб-разработки. https://www.wintellect.com/data-binding-pure-javascript/

Если вы используете каркас (AngularJs, React, Ember et c), посмотрите, как связать данные - обычно это очень просто

...