Arhn - архитектура программирования

передать скрытый входной массив в jquery load()

я пытаюсь отправить скрытый тип ввода, который содержит массив, в мою загрузку (функцию) jquery, однако у меня возникают проблемы с его работой

table_planner.php

foreach($category->result() as $c){
    <input type="hidden" name="tname[]" id="tname[]" value="<?php echo $c->name;?>" />
}

<div id="planner">
<!--load content goes here-->
</div>

script.js

var tname = $("#tname").val();
console.log(tname);
$('#planner').load(base+"site/table_planner/"+tname)

контроллер

public function table_planner($tname="")
{
    if($tname){
    $data['category'] = $this->site_model->get_category();
    }
    else{
    $data['category'] = $tname;
    }

    $this->load->vars($data);
    $this->load->view("site/ajax/table_planner");   
}

то, что я хочу, чтобы произошло

  1. из table_planner.php - значение скрытого ввода с id tname[] будет отправлено в мой script.js
  2. из script.js переменная tname будет отправлена ​​​​в table_planner в моем контроллере

проблема начинается с того, что мой script.js не может получить значение моего скрытого входного значения, потому что console.log(tname) говорит, что оно не определено, но если я повторю его значение в table_planner.php, оно содержит значение

Есть ли способ сделать это?


Ответы:


1

Что за tname[]?

Идентификатор в вашем html tname[]:

<input type="hidden" name="tname[]" id="tname[]" ...

но в вашем js есть #tname:

var tname = $("#tname").val();
console.log(tname);

Измените id в вашем html на tname:

<input type="hidden" name="tname[]" id="tname" value="<?php echo $c->name;?>" />


update for passing the whole array

$tname = '';
foreach($category->result() as $c){
   $tname .= '&tname[]=' . $c;
}
// $tname will be like &tname[]=cake&tname[]=food...

установите его в html:

<input type="hidden" name="tname" id="tname" value="<?php echo $tname;?>" />

в js вызовите URL base+"site/table_planner/"

var tname = $("#tname").val();
console.log(tname);
$('#planner').load(base+"site/table_planner/?"+tname)

в url base+"site/table_planner/" должен быть файл php для обработки запроса:

var_export($_GET);

вы увидите, что tname - это массив.

23.09.2013
  • попробовал это, и теперь console.log теперь что-то показывает, но показывает только первое значение массива 23.09.2013
  • Хорошо, вы хотите отправить содержимое массива tname на этот URL: base+"site/table_planner/"+tname, какое значение вы ожидаете? 23.09.2013
  • tname будет выглядеть примерно так: $tname[0] = торт;$tname[1] = еда;$tname[3] = посуда;$tname[4] = напитки; 23.09.2013
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..