使用模态窗口编辑db记录

时间:2017-02-23 12:35:05

标签: laravel laravel-5.3 laravel-5.4

我试图根据我保存到按钮值中的ID来编辑某些数据库记录。

      @foreach ($employment as $empl)
        <button data-toggle="modal" data-target="#edit-empl" href="#edit-empl" class="btn btn-default editbtn-modal" value="{{ $empl->id }}" type="button" name="editbtn">Edit</button>
        <h3 class="profile-subtitle">{{ $empl->company }}</h3>
        <p class="profile-text subtitle-desc">{{ $empl->parseDate($empl->from) }} - {{ $empl->parseDate($empl->to) }}</p>
      @endforeach

正如你在这里看到的,我有一个附有id的编辑按钮。 当我单击编辑时,我打开一个模态窗口来编辑字段,然后提交表单。 问题是,我不确定如何从按钮进入模态窗口,以便我可以比较值并显示正确的字段..

<form class="app-form" action="/profile/employment/edit/{id}" method="POST">

  {{ csrf_field() }}

  <input class="editID" type="hidden" name="editID" value="">

  @foreach ($employment as $empl)
    @if ($empl->id == buttonidhere)
      <div class="form-group">
        <label for="company">Company:</label>
        <input type="text" name="company" value="{{ $empl->company }}">
      </div>

      <div class="form-group">
        <label for="month">From:</label>
        <input type="date" name="from" value="{{ $empl->from }}">
      </div>

      <div class="form-group">
        <label for="to">To:</label>
        <input type="date" name="to" value="{{ $empl->to }}">
      </div>
    @endif
  @endforeach

  <div class="row">
    <div class="col-sm-6">
      <input type="submit" class="btn btn-primary profile-form-btn" value="Save Changes">
    </div>
  </div>
</form>

我能够使用javascript将按钮值传递给模态..我把它放入一个隐藏的输入但是根本不能帮助我,因为我无法获得输入值以便比较值..

1 个答案:

答案 0 :(得分:0)

一种解决方案是以与发送模式相同的方式发送您想要的详细信息。

将变量发送到模态的正确方法是将其包含在打开模态的按钮中:

data-variablename="{{$your-variable}}"

使用此jQuery将变量的值获取为模态。其中edit-empl是按钮的模态和数据目标的ID

 $('#edit-empl').on('show.bs.modal',function (e) {
            var variablename= $(e.relatedTarget).data('variablename');

            $(e.currentTarget).find('input[id="yourinputID"]').val(variablename);