您所需要的只是调用
AJAX请求以获取必填字段。就像下面这样:
(我不知道您的型号名称)查看您的表格,看看
id
您的patient_name
字段是什么。通常是这样modelname-fieldname
。我认为您的型号名称是Patient
。因此,的idpatient_name
会patient-patient_name
。添加一个ajax请求(在您的视图中)。
调用AJAX的代码如下所示:
$this->registerJs("$('#patient-patient_name').on('change',function(){ $.ajax({ url: '".yiihelpersUrl::toRoute("controllerName/patient")."', dataType: 'json', method: 'GET', data: {id: $(this).val()}, success: function (data, textStatus, jqXHR) { $('#patient-city').val(data.city); $('#patient-state').val(data.state); }, beforeSend: function (xhr) { alert('loading!'); }, error: function (jqXHR, textStatus, errorThrown) { console.log('An error occured!'); alert('Error in ajax request'); } });});");
笔记:
- 用您自己的代码更改上面代码中的 ControllerName 。
- 我假设的ID
city
和state
领域具有以下ID(S):patient-city
与state-city
相对。 - 病人 是您控制器中的一个动作
- 您可能需要删除警报|日志并对以上代码进行一些自定义
我没有考虑任何清理代码的条件。请确保用户数据正确。
- 最后,将动作代码添加到控制器中。
动作代码:
public function actionPatient($id){ // you may need to check whether the entered ID is valid or not $model= appmodelsPatient::findOne(['id'=>$id]); return yiihelpersJson::enpre([ 'city'=>$model->city, 'state'=>$model->state ]);}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)