Обновление данных таблицы на основе выбора выпадающего списка - PullRequest
0 голосов
/ 06 октября 2009

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

В качестве базового примера, предположим, что в таблице указаны игроки баскетбольной команды вместе с их ростом. Представьте, что игрок выбран из выпадающего списка ... Я хочу, чтобы высота этого игрока изменилась в HTML-таблице, если пользователь меняет игрока в этом ряду с помощью выпадающего списка. Например, если в приведенной ниже таблице пользователь изменил игрока Коби Брайанта на другого игрока (например, Рэя Аллена), столбец «Высота» изменится на основе поиска в базе данных высоты Рэя Аллена.

Player           Height
[Kobe Bryant V]   6'6"
[Dwyane Wade V]   6'4"

Я хотел бы сделать это с помощью jquery или javascript. Кроме того, я использую CakePHP для своего сайта, но это может быть неактуально, если все это обрабатывается jquery или javascript. Спасибо за любую помощь! Райан

1 Ответ

2 голосов
/ 06 октября 2009

С JQuery это довольно просто. Просто прикрепите событие onchange к раскрывающемуся списку и сделайте это событие, сделав запрос AJAX / AJAJ, который может вернуть новые необходимые вам значения HTML.

<select id="player">
     <option value="KobeBryant">Kobe Bryant</option>
     <option value="DwayneWade">Dwayne Wade</option>
</select>

и jQuery для выполнения запроса (я использую JSON, вы также можете использовать XML)

$("#player").change( function (event) {
     $.getJSON('player.php?player=' + $(this).val(), function (json) { 

          // Change data in the table

     });
});

http://docs.jquery.com/Ajax/jQuery.getJSON

player.php в этом случае потребуется вернуть JSON, в зависимости от игрока, которого вы отправили.

http://www.json.org/example.html

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