1

アクション コントローラーに返された JSON データがあります。

$results = $repo->getMatchingCityName($searchTerm);

私が得ている応答:

[{"CityName":"Montreal"},{"CityName":"New york"}]........

しかし、jquery uiのオートコンプリートには何も表示されません

試した

$this->_helper->json(array_values($results));

Zend_Json::encode($results);

しかし、役に立たない。に変換するにはどうすればよいですか

[{"value":"Montreal","label":"Montreal"},{"value":"New york","label":"New york"}]
4

2 に答える 2

0

私はそれをこのように動作させました

$temp = array();
foreach($results as $row)
{
    $value = $row["CityName"];
    array_push($temp, array(
        "label" => $value,
        "value" => $value
    ));
}

$data = $this->_helper->json($temp);
$this->_helper->autoComplete($data);

ブートストラップにビューヘルパーを追加

Zend_Controller_Action_HelperBroker::addHelper(
    new ZendX_JQuery_Controller_Action_Helper_AutoComplete()
);
于 2011-11-21T02:11:52.493 に答える
0

このコードを試してください

$results = $repo->getMatchingCityName($searchTerm); // [{"CityName":"Montreal"},{"CityName":"New york"}]........


$data = Zend_Json::decode($results);

$new = array();

foreach ($data as $row) {
   $temp['value'] = $row['CityName'];
   $temp['label'] = $row['CityName'];
   array_push($new, $temp);
}

$newEncode = Zend_Json::decode($new); //[{"value":"Montreal","label":"Montreal"},{"value":"New york","label":"New york"}]
于 2011-11-18T06:34:58.190 に答える