Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Редактирование данных в таблице и отправка на сервер (https://javascript.ru/forum/dom-window/45823-redaktirovanie-dannykh-v-tablice-i-otpravka-na-server.html)

Batman_1989 20.03.2014 00:49

Может через live('click', func) нужно?
Таблица появляется после щелчка по ссылке, откуда приходят данные в JSON. После уже с помощью .getJSON формируется таблица и в нее вставляются данные.

$(function() {
    $('ul.f-nav-tabs a').bind('click', function(event) {
        event.preventDefault(); // Чтобы браузер по ссылке не ходил
        var url = $(this).attr('href');
        $.getJSON(url, function(data) {
            $('table#items').remove();
            var html_table = '<table id="edit"></table>';
            var tr = '<tr>';

            $.each(data.fields, function(key, value) {
                tr += '<th>' + value + '</th>';
            });
            tr += '</tr>';
            var html_table = $(html_table).append(tr);

            $.each(data.qsd, function(key, value) {
                var tmp_val = value;
                var tr = '<tr id="' + key + '">';
                $.each(tmp_val, function(key, value) {
                    tr += '<td>' + value + '</td>';
                });
                tr += '</tr>';
                html_table = $(html_table).append(tr);
            });
            $('section#contentPane').html(html_table);
        });
        $('section#formPane').load('/hd/' + url + '/add/');
    });
});

рони 20.03.2014 01:32

Batman_1989,
ставьте клик на элемент выше того что загружается
$(elem).on('click', 'td', function(event) {})

danik.js 20.03.2014 01:36

Цитата:

Сообщение от Batman_1989
После уже с помощью .getJSON формируется таблица и в нее вставляются данные

Ну так ты сформируй таблицу, вставь ее, и уже затем навесь обработчики. Включи блин мозг.
Цитата:

Сообщение от Batman_1989
tr += '<th>' + value + '</th>';

Вобще, в IE innerHTML таблицы сломан. Может конечно в jquery есть для этого workaround. Советую проверить, или отказаться от работы с HTML.
Например:
$('<td/>', {text: value}).appendTo(tr)

Тоже самое с tr'ками.

Neugierig 27.02.2016 22:03

danik.js,
Имею похожую задачу:
https://github.com/hhru/frontend-tes...ster/README.md
Подскажите тезисно, как модифицировать ваш код, и что добавить, чтобы реализоваить добавление заметки с всплывающим окном в таблицу.
При этом, по заданию: "сохранение календаря в localStorage".


Часовой пояс GMT +3, время: 02:49.