我是laravel的新手,我想从数据库中获取数据并使用ajax在Alert上显示
我的路线:
Route::get('getforajax/{id}','Home@getforajax');
我的控制器:
public function getforajax ($id)
{
$result=DB::select('select * from employees where empid =?',[$id]);
return $result;
}
我的观点:
$('#empid1').keyup(function() {
$.ajax({
url: 'getforajax/3',
type: 'GET',
data: data,
dataType: 'json',
success: function (data) {
alert(data.empid);
}
});
});
答案 0 :(得分:1)
您可以从控制器返回json。
@RunWith(SpringRunner.class)
@SpringBootTest
public class LegacyBeansAutoConfigurationTest {
@Autowired
ApplicationContext context;
@Test
public void contextLoads() {
Assertions.assertThat(context.getBeanNamesForType(LegacyBeansAutoConfiguration.Legacy1.class)).isNotNull();
Assertions.assertThat(context.getBeanNamesForType(LegacyBeansAutoConfiguration.Legacy2.class)).isNotNull();
Assertions.assertThat(context.getBeanNamesForType(LegacyBeansAutoConfiguration.Legacy3.class)).isNotNull();
}
}
但是,结果将是所有查询结果行的数组。因此,即使您期望查询得到一个结果,它仍然会为您提供单个条目的数组。
return response()->json($result, 200);
此外,您可以对其进行如下改进:
在Javacript中,您需要执行以下操作:
[
[
id => something,
name => something
]
]
但是,您需要确保数据在那里。使用雄辩的模型从Id加载条目:
data[0].empId
然后您直接做:
$result = Employee::findOrFail($employeeid);
答案 1 :(得分:1)
您应该尝试以下操作:
use App\Employee; //employee table's model
public function getforajax ($id)
{
$result=Employee::find($id);
return $result;
}