我正在尝试创建ajax搜索,其中用户键入他们的代码来搜索学校和大学名称。但是我无法将这两个值传递给我的输入字段。
html
<footer>
<h1>Dungeon<br>Dudes</h1>
<article>
<h6>Quick Links</h6>
</article>
<article>
<h6>Support</h6>
<ul>
<li><a href="#">FAQ</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
</article>
<article>
<h6>Follow Us</h6>
<ul>
<li><a href="#">Facebook</a></li>
<li><a href="#">Twitter</a></li>
<li><a href="#">YouTube</a></li>
</ul>
</article>
<article id="cpyrt">
<p>© 2018 Dungeon Dudes | All Rights Reserved</p>
<ul>
<li><a href="#">Terms of Service</a></li>
<li><a href="#">Support</a></li>
</ul>
</article>
</footer>
ajax
<input name="code" id="search" value="">
<input name="school" value="" type="text">
<input name="uni" value="" type="text">
控制器
$('#search').on('keyup',function(){
var value = $(this).val();
$value=$(this).val();
$.ajax({
type : 'get',
url : '{{URL::to('search')}}',
data:{'search':$value},
success:function(data){
$('input[name="school"]').val(data);
$('input[name="uni"]').val(data); //does'nt work
}
});
});
学校名称显示正确,但大学名称未显示。我该怎么做?请帮忙!
答案 0 :(得分:2)
您错过了大学的衔接。如果我没看错,这应该可以工作:
$output.= $code->school;
$output.= $code->uni;
相反,请尝试:
public function search(Request $request){
if($request->ajax()){
$output= array();
$code=Model::where('code','LIKE','%'.$request->search."%")->get();
if($code){
foreach ($code as $key => $code) {
$output['school'] = $code->school;
$output['uni'] = $code->uni;
}
return Response($output);
}
}
}
$('#search').on('keyup',function(){
var value = $(this).val();
$value=$(this).val();
$.ajax({
type : 'get',
url : '{{URL::to('search')}}',
data:{'search':$value},
success:function(data){
$('input[name="school"]').val(data.school);
$('input[name="uni"]').val(data.uni);
}
});
});