在输入字段中从Ajax获取价值

时间:2018-08-18 02:07:00

标签: php ajax laravel

我正在尝试创建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>&copy; 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
                    }
            });  
        });

学校名称显示正确,但大学名称未显示。我该怎么做?请帮忙!

1 个答案:

答案 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);
                    }
            });  
        });