【问题标题】:submit form to form different url提交表单以形成不同的 url
【发布时间】:2017-10-05 22:31:41
【问题描述】:

在这种情况下我遇到了问题,如何提交表单以在不同的 url 中提交其他表单......

示例:

form1.php:

<form>
     <input type="text" name="name" id="name">
     <input type="submit" href="#" class="btn btn-info btn-sm" value="submit">
</form>

form2.html:

<form>
     <input type="text" name="name" id="name">
     <input type="submit" href="#" class="btn btn-info btn-sm" value="submit">
</form>

如何同时提交form1和form2?

【问题讨论】:

  • 你为什么使用两种形式?使用 name[ ] 之类的名称,为您提供输入字段数组,然后提交。
  • @Sagar,因为机器中的 form2 不支持 php 文件。有什么例子可以提交吗?
  • 您可以使用 laravel 视图,如刀片文件,您可以在其中定义表单然后提交。您是否尝试通过 Ajax 调用提交?
  • 两个表单在同一个页面还是在不同的页面?
  • @Sagar,是的,我使用 laravel,你有提交表单的示例吗?

标签: jquery ajax forms laravel laravel-5.3


【解决方案1】:

使用单一表单太容易了。使用名称的数组输入,例如:

<form action="{{URL::to('create/name')}}" class="form-horizontal" method="POST" role="form">
        {{ csrf_field() }}
        <div class="form-group">
            <div class="col-sm-6">
                <label>Name One</label>
                <input type="text" name="name[]" class="form-control">
            </div>
            <div class="col-sm-6">
                <label>Name Two</label>
                <input type="text" name="name[]" class="form-control">
            </div>
        </div>
    <button class="btn btn-default pull-right" type="submit">Submit</button>
</form>

现在你可以在 web.php 中定义路由

Route::post('create/name','NameController@postName');

最后编写一些逻辑在 NameController 中创建名称为:

public function postName(Request $request)
{
    foreach($request->name as $name){
         //Write logic to create Name.
    }
}

使用单个刀片页面,您可以像这样提交名称,而无需 Ajax 调用。希望这对您有所帮助。

【讨论】:

  • form2 不同的机器,使用 html 文件而不是使用 laravel。仅使用 laravel 的 form1
  • 如果你想同时从不同的机器提交,那将很难维护
  • 我还是不明白“另一台机器”这个词
【解决方案2】:

我不是 laravel 方面的专家,所以下面是 JS 中的实现。

使用 an 移动 form1.php 中的 form2.html 并使其不可见,如下所示:

<iframe src="form2.html" style="display:none" name="form2"></iframe>

然后在form1.php中进行如下修改:

<form onsubmit="return false">
<input type="text" name="name" id="name">
 <input type="button" href="#" class="btn btn-info btn-sm" value="submit" onclick="submitForm()">
</form>

这里我们删除了表单的默认提交操作,而是在点击提交按钮时调用 submitForm() 函数。

function submitForm(){
//first we will submit form2.html 
window.frames["form2"].document.forms[0].submit();
document.forms[0].submit();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-12
    • 1970-01-01
    • 2014-08-31
    • 2016-06-20
    • 2016-09-26
    • 2017-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多