【问题标题】:Laravel modal form pass input to route as parameterLaravel 模态形式将输入作为参数传递给路由
【发布时间】:2018-09-13 11:03:13
【问题描述】:

我有一个按钮,它调用一个模式表单,用户可以在其中输入名称。我希望我的模式中的提交按钮获取输入的字符串并将其作为参数附加到特定路由中。我找不到显示如何将模态输入值放入路由调用的示例。

按钮代码在视图中:

    <button  
        type="button" 
        class="btn btn-info btn-lg" 
        data-toggle="modal" 
        onClick="$('#myModal').modal()"
        style="margin-top: 2px;">
        New Name
    </button>

模态代码:

    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">

        <div class="vertical-alignment-helper" style="width:50%">
            <div class="modal-dialog vertical-align-center">
                <div class="horizontal-alignment-helper">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span>

                            </button>
                            <h4 class="modal-title" id="myModalLabel">Create New Plan</h4>

                        </div>
                        <div class="modal-body">Enter a name for your new plan and we'll do the rest...
                            <p></p>
                                <div class="form-group form-group-lg">
                                        <label for="firstname" class="control-label"> Plan Name:</label>
                                        <div>   
                                            <input class="form-control" type="text" id="lg">
                                        </div>

                                </div>
                                <div class="modal-footer">
                                    <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
                                    <button type="button" class="btn btn-primary">Create Plan</button>
                                </div>

                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

路由我希望提交按钮调用:

Route::get('create-plan/{plan_name}', ['uses' => 'GeneratePlanController@createplan'])->middleware('auth');

如何将表单控件&lt;input class="form-control" type="text" id="lg"&gt; 中的用户输入作为{plan_name} 参数传递到路由调用中?

我在 XAMPP 上使用 Laravel 5.5 和 PHP 7。我的模态表单工作正常,手动调用时的路由/控制器也是如此。只需要将两者连接在一起即可。

提前致谢。

【问题讨论】:

  • 点击按钮时会发生什么?您的模式中没有表单标签。
  • 嗯,还没有,因为我还没有把它连接起来。我正在尝试找出将输入值传递到表单操作的路由字符串的正确方法,因此我的问题/帖子。

标签: php forms laravel modal-dialog


【解决方案1】:

您可以为此使用 javascript onclick 事件:

<button type="button" class="btn btn-primary" onclick="window.location.href = '/create-plan/'+document.getElementById('lg').value;">Create Plan</button>

【讨论】:

  • 谢谢。根据您的建议,我最终创建了一个辅助路由,以方便在您的 JavaScript 中连接 URL,使用以下命令:&lt;button type="button" class="btn btn-primary" onclick="javascript:window.location.href = '{{URL::to('create-plan')}}'+ '/'+document.getElementById('lg').value; return false;"&gt;Create Plan&lt;/button&gt;
猜你喜欢
  • 2020-12-22
  • 1970-01-01
  • 2019-03-03
  • 2018-08-14
  • 1970-01-01
  • 1970-01-01
  • 2018-07-07
  • 1970-01-01
  • 2018-06-20
相关资源
最近更新 更多