如何使用DB的结果自动填写表单上的某些字段

时间:2015-04-13 16:50:06

标签: jquery ajax cakephp

好吧,我有这个功能:

     function preencherLinhaProduto(obj) {
    $.ajax({type: "POST",
        url: '/pedidoOnline/index.php/Pedidos/pesquisarLinhaProduto',
        async: false,
        data: {
            cd_cpl_tamanho: obj
        },
        dataType: "html",
        success: function(data) {
            var teste = JSON.parse(data);
            //I'm trying to do this way, but isn't working
            var table = $('#tabelaPedido');
            $(table).each(function() {
                $(this).closest('tr').find('.cod_linha').val(teste.id);
                $(this).closest('tr').find('.linha').val(teste.label);
        });
        }
    });
}

我从DB搜索:

 public function pesquisarLinhaProduto(){
    $this->autoRender = false;
    $this->loadModel('ProcuraProdutoPedOnline');
    // Consultando pelo que o usuário está digitando
    $produto = $_REQUEST['cd_cpl_tamanho'];
    $linhas = $this->ProcuraProdutoPedOnline->find('all', array(
            'fields' => array('cd_linha', 'ds_linha'),
            'conditions' => array(
                    'cd_cpl_tamanho' => "$produto"
            )
    ));

    // Formatar resultado
    $result = array();
    foreach ($linhas as $key => $linha) {
        $result[$key]['id'] = (int) $linha['ProcuraProdutoPedOnline']['cd_linha'];
        $result[$key]['label'] = utf8_encode($linha['ProcuraProdutoPedOnline']['ds_linha']);
    }

    $linhas = $result;
    echo json_encode($linhas);
}

我想要什么?我想自动填写表单页面上的一些字段和DB的结果(返回信息确定)。 我该怎么做?

1 个答案:

答案 0 :(得分:-1)

你有结果。您可以根据需要将表单的值设置为结果。非常简短的例子:

<input type="text" name="firstname" value="<?php echo $results['firstname'] ?>">

如果您没有结果,则该值将设置为空白。