我想使用部分渲染渲染页面。我想用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>
答案 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);
});