【问题标题】:Can't submit a form with JavaScript function when selecting radio input选择单选输入时无法使用 JavaScript 函数提交表单
【发布时间】:2016-09-09 19:43:43
【问题描述】:

我写这个 html 代码与 mojolicius 代码混合。这个想法是在我选择一个风格化为引导按钮的单选输入时提交表单。

如果我输入提交类型输入,我选择引导按钮并提交它,它可以完美运行。但是当我使用这个函数(submitForm(node))提交表单时,它似乎提交了它,但它没有做任何事情。 Firefox 调试器不会抛出任何错误。

<form method="post" id="runform">
%if (keys %$base) {
%for my $option (sort keys %$base) {

  <div class="col-sm-4">
  <div class="panel panel-success machine">

...                           

    <div class="btn-group pannel-body" data-toggle="buttons">
       <label class="btn btn-success" id="base_action" onclick="submitForm(<%= $option %>)">
          <input name="id_base" id="submit<%= $option %>" type="radio" value="<%= $option %>"><strong>&nbsp;<i class="fa fa-play" aria-hidden="true"></i>&nbsp;Start this Machine</strong>
       </label>                              
    </div>

 </div>
 </div>
%}
</form>

JavaScript 函数:

function submitForm(node) {
    var id = "submit"+ node ;
    document.getElementById(id).checked=true;
    document.getElementById("runform").submit();
}

谢谢

【问题讨论】:

  • 您是否尝试过使用submit_button helper 修改类型? %= submit_button 'Ok', id =&gt; "submit.$option, type=&gt;'radio', value=...

标签: javascript html forms twitter-bootstrap mojolicious


【解决方案1】:

您在表单上缺少action 属性,因此它被提交到当前页面,这就是它似乎提交但什么也不做的原因,因为您可能已将服务器配置为仅使用同一页面回复请求。

将表单指向正确的 URL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2013-03-14
    • 1970-01-01
    • 2014-10-23
    • 2017-01-30
    • 2015-02-11
    • 1970-01-01
    相关资源
    最近更新 更多