Как загрузить несколько полей для формирования из базы данных с помощью jquery?

0

В моем веб-приложении у меня есть форма, содержащая около 25 полей. Пользователи создадут эту форму, и значение поля формы будет передано в таблицы базы данных. Но мне также нужна функция редактирования для этой формы. Люди будут нажимать кнопку, форма загружается, и мне нужны значения полей формы для загрузки из базы данных. Я знаю, что могу загружать данные в поле формы с помощью функции загрузки jquery:

$('#text_field').load('text_field_value.php');

Но когда у меня есть 25 полей, мне нужно сделать 25 подключений к базе данных (1 соединение на файл), поэтому загрузка моей формы очень медленная.

Есть ли какое-либо решение для ускорения процесса?

Спасибо заранее.

  • 2
    Вы можете получить все значения для строки в виде массива JSON, например?
  • 0
    Это может быть просто массив?
Показать ещё 1 комментарий
Теги:

1 ответ

1
Лучший ответ

Возможно, вы должны загрузить значения полей, используя один запрос ajax, чтобы вы использовали только одно соединение с базой данных, а затем, как сказал Пекка, возвратите массив JSON. Затем с помощью jQuery перейдите в массив JSON, введя значения в правильные поля.

Поэтому используйте .getJSON/.post/.ajax вместо .load

EDIT: пример массива JSON с объектами для каждого поля

[
    {
        'field'      : '#field1',
        'fieldType'  : ':text',
        'fieldValue' : 'Test Value'
    },
    {
        'field'      : '[name=field2]',
        'fieldType'  : ':radio',
        'fieldValue' : '#item1'
    },
    {
        'field'      : '#field3',
        'fieldType'  : 'select',
        'fieldValue' : 5
    },
    {
        'field'      : '#field4',
        'fieldType'  : ':checkbox',
        'fieldValue' : true
    }
]

Затем вы можете выполнить цикл через массив следующим образом:

for(i in array)
{
    /***
     * access each object as follows:
     * array[i].field
     */
    .....
}
  • 0
    Могу ли я поместить всю информацию в стандартный массив, а не JSON?
  • 0
    Если вы хотите взаимодействовать с массивом, я думаю, вам нужно будет вернуть массив JSON. Я добавлю пример того, как я бы сделал массив JSON.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню