使用AJAX点击按钮时,Javascript填充输入

时间:2015-12-14 13:11:37

标签: javascript php jquery html ajax

一切都近乎有效!我只需要找出为什么下面的代码不会给我更多的第一个按钮值。

public static function getProjectOnSearch($inp){
        return DB::table('projecten')
            ->select(DB::raw('titel,status,prioriteit,soort,projectnaam,projecturl
            ,gebruikersnaam,wachtwoord
            ,gebruiker_id,omschrijvingproject'))
            ->where('projectnaam', 'LIKE', '%'.$inp.'%')
            ->get();
    }

enter image description here我想在点击按钮时用数据库中的值填充一些输入字段。我有代码正在填写名称,然后单击搜索按钮来填充输入。这很好用。当我将该代码与其他按钮一起使用时,它将无法工作。请参阅下面的代码。

Javascript代码:

<script type="text/javascript">
    $("#wijzigKnop2").on("click",function(){
      var email2 = $('#zoeknaam2').val('');
      $('#titel2').val('');
      $('#status2').val('');
      $('#prioriteit2').val('');
      $('#type2').val('');
      $('#projectnaam2').val('');
      $('#projecturl2').val('');
      $('#gebruikersnaam2').val('');
      $('#wachtwoord2').val('');
      $('#omschrijving2').val('');

      $.ajax({
        method: "POST",
        url: "/updateProjectData",
        data: {   input: email2 ,
               _token: "{{ csrf_token() }}"
              }
      })
        .done(function( msg ) {
        $('#titel2').val(msg[0].titel);
        $('#status2').val(msg[0].status);
        $('#prioriteit2').val(msg[0].prioriteit);
        $('#soort2').val(msg[0].soort);
        $('#projectnaam2').val(msg[0].projectnaam);
        $('#projecturl2').val(msg[0].projecturl);
        $('#gebruikersnaam2').val(msg[0].gebruikersnaam);
        $('#wachtwoord2').val(msg[0].wachtwoord);
        $('#omschrijving2').val(msg[0].omschrijvingproject);
      });

    });
</script>

带有隐藏值输入的HTML按钮(通常会键入值,但此按钮将从HTML表格中获取值,该值会在foreach中生成一行)

   <input type="hidden" value="{{$project->projectnaam}}" 
id="zoeknaam2" name="zoeknaam2" class="form-control" placeholder="Projectnaam">

<button class="btn btn-success btn-xs" id="wijzigKnop2" name="zoekProject" type="button">
<i class="glyphicon glyphicon-pencil"></i>
</button>

非常欢迎任何答案或想法,感谢提前发布!

2 个答案:

答案 0 :(得分:1)

请检查

var email2 = $('#zoeknaam2').val('');

这应该不是空白

var email2 = $('#zoeknaam2').val();

如果在服务器端获得适当的值,那么服务器端代码就会出现问题。

要查看回复,请执行

console.log(JSON.stringify(msg));

根据提问者服务器端解决

public static function getProjectOnSearch($inp){
    return DB::table('projecten')         ->select(DB::raw('titel,status,prioriteit,soort,projectnaam,projecturl ,gebruikersnaam,wachtwoord ,gebruiker_id,omschrijvingproject')) ->where('projectnaam', 'LIKE', '%'.$inp.'%') ->get(); 
}

解决所有问题。

答案 1 :(得分:0)

获取元素的值然后清除它。

var email2 = $('#zoeknaam2').val();
$('#zoeknaam2').val('');