如何使用yii2中的ajax在Main页面中呈现另一个页面

时间:2016-12-08 13:23:28

标签: jquery ajax yii2

我想使用部分渲染渲染页面。我想用ajax做我将如何做到这一点。 我是ajax的新手,所以我对它不了解更多。

这是我要呈现的页面

<td><?= Html::input('text' , 'name' = '[DefVendors]["name"]' ); ?></td>
<td><?= Html::input('text' , 'name' = '[DefVendors]["address"]' ); ?></td>
<td><?= Html::input('text' , 'name' = '[DefVendors]["email"]' ); ?></td>
<td><?= Html::input('text' , 'name' = '[DefVendors]["contact"]' ); ?></td>
<td><?= Html::input('text' , 'name' = '[DefVendors]["bank_name"]' ); ?></td>
<td><?= Html::input('text' , 'name' = '[DefVendors]["bank_accountno"]' ); ?></td>
<td><?= Html::dropDwonList($modelVendors , 'company_id' , arrayHelper::map(defCompanies::find()->all() , 'id' ,'name' , ['prompt' => 'Select Company'])) ?></td>

这里应该在

中呈现

    

</tr>

1 个答案:

答案 0 :(得分:1)

简单的例子。

控制器

class ExampleController extends Controller {

    public function actionIndex()
    {
        return $this->ajaxResponse(true, $this->renderPartial('your_view',[]));
    }

    private function ajaxResponse($success = true, $content = '')
    {
        $response = [
            'success' => $success,
            'content' => $content

        ];
        echo json_encode($response);
        return $success;
    }
}

的JavaScript

$.get('example/index', (html) => {
     var response = JSON.parse(html);
     $('#your-selector').html(response.content);
});