简体   繁体   English

Laravel 使用单选按钮插入动态输入值

[英]Laravel insert dynamic input values with radio button

I am a beginner at Laravel, I want to insert a more dynamic address field to the database and I want to select one primary address using the radio button.我是 Laravel 的初学者,我想在数据库中插入一个更动态的地址字段,并且我想使用单选按钮将 select 一个主要地址。 I can able to add more address fields, but, I am unable to select one primary address because it's selecting all radio button values.我可以添加更多地址字段,但是,我无法 select 一个主地址,因为它选择了所有单选按钮值。 I have given below using my code我在下面给出了使用我的代码

This is My Blade File这是我的刀片文件

    <div>
          <form action="{{ route('register.post') }}" enctype="multipart/form-data" accept-charset="utf-8" method="POST" >
               @csrf
              <div class="form-group row">
                  <label for="address" class="col-md-4 col-form-label text-md-left">Address</label>
                   <div>
                     <table id="dynamicAddRemove">
                       <tr>
                         <td><button type="button" name="add" id="add-btn" class="btn btn-success">Add More Details</button></td> 
                        </tr>
                        <tr>
                          <td>
                              
                          </td>
                          <tr>
                      </table>
                      </div>
                  </div>    
                  <div class="col-md-6 offset-md-4">
                    <button type="submit" class="btn btn-primary">
                            Save
                     </button>
                 </div>
                </form>
                <div>
                <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
                <script type="text/javascript">
                    var i = 0;
                    $("#add-btn").click(function(){
                        //alert("I am an alert box!");
                    ++i;
                    $("#dynamicAddRemove").append('<tr><td><input type="text" name="moreFields['+i+'][house_no]" placeholder="House No" class="form-control" /></td><td><input type="text" name="moreFields['+i+'][street_name]" placeholder="Street Name" class="form-control" /></td><td><input type="text" name="moreFields['+i+'][area]" placeholder="Area" class="form-control" /></td><td><input type="text" name="moreFields['+i+'][pincode]" placeholder="Pincode" class="form-control" /></td><td style="padding-left:50px;"><input type="radio" class="form-check-input" name="moreFields['+i+'][primary_address]" value="'+i+'"></td><td><button type="button" class="btn btn-danger remove-tr">Remove</button></td></tr>');
                    });
                    $(document).on('click', '.remove-tr', function(){  
                    $(this).parents('tr').remove();
                    });  
                    </script>

This is My Controller File这是我的 Controller 文件

 public function postRegistration(Request $request)
{  
    $id = DB::getPdo()->lastInsertId();
    foreach ($request->moreFields as $key => $value) {
      
        Address::create([
            'user_id'=>$id,
            'house_no'=>$value['house_no'],
            'street_name'=>$value['street_name'],
            'area'=>$value['area'],
            'pincode'=>$value['pincode'],
            'primary_address'=>$value['primary_address'],
            
        ]);
    }

You dont need to make different name radio buttons use same name for all radio buttons so that user can not select other radio button after selecting one您不需要使不同名称的单选按钮对所有单选按钮使用相同的名称,以便用户在选择一个后不能 select 其他单选按钮

<input type="radio" class="form-check-input" name="moreFields" value="'+i+'">

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM