首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >仅使用提交按钮在HTML表单中执行onsubmit函数

仅使用提交按钮在HTML表单中执行onsubmit函数
EN

Stack Overflow用户
提问于 2020-08-13 02:10:57
回答 3查看 45关注 0票数 0

如下代码片段所示,通过单击加号图标,将同时执行submitFunc()meanFunc()。但我只想在按下提交按钮时执行submitFunc()

代码语言:javascript
运行
复制
function submitFunc(e) {
  alert('submit')
}
function meanFunc(e) {
  alert('click')
}
代码语言:javascript
运行
复制
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>

  <!-- font-awesome -->
  <script src='https://kit.fontawesome.com/a076d05399.js'></script>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  
  <!-- bootstrap -->
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>


<iframe name="votar" style="display:none;"></iframe>
<form class="save-form" action="" method="post" target="votar" onsubmit="submitFunc(event)">      
  <div class="form-group">
    <div class="form-row m-2" >
      <input class="form-control" id="meaning" placeholder="Meaning" style="width:75%">
      <button class="btn rounded text-left"><i class='plus-btn fas fa-plus-circle' onclick="meanFunc(event)"></i></button>
    </div>
  </div>
  <input value="Submit" type="submit" class="btn btn-primary m-2">
</form>

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-08-13 02:17:02

按钮的默认类型是submit。只需将其设置为按钮即可,例如<button class="btn rounded text-left" type="button">

代码语言:javascript
运行
复制
function submitFunc(e) {
  alert('submit')
}
function meanFunc(e) {
  alert('click')
}
代码语言:javascript
运行
复制
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>

  <!-- font-awesome -->
  <script src='https://kit.fontawesome.com/a076d05399.js'></script>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  
  <!-- bootstrap -->
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>


<iframe name="votar" style="display:none;"></iframe>
<form class="save-form" action="" method="post" target="votar" onsubmit="submitFunc(event)">      <div class="form-group">
    <div class="form-row m-2" >
      <input class="form-control" id="meaning" placeholder="Meaning" style="width:75%">
      <button class="btn rounded text-left" type="button"><i class='plus-btn fas fa-plus-circle' onclick="meanFunc(event)"></i></button>
    </div>
  </div>
  <input value="Submit" type="submit" class="btn btn-primary m-2">
</form>

票数 0
EN

Stack Overflow用户

发布于 2020-08-13 02:16:55

只需向函数和加号图标上的调用添加一个return false,下面是修改后的代码片段

代码语言:javascript
运行
复制
function submitFunc(e) {
  alert('submit')
}
function meanFunc(e) {
  alert('click')
return false;
}
代码语言:javascript
运行
复制
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>

  <!-- font-awesome -->
  <script src='https://kit.fontawesome.com/a076d05399.js'></script>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  
  <!-- bootstrap -->
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>


<iframe name="votar" style="display:none;"></iframe>
<form class="save-form" action="" method="post" target="votar" onsubmit="submitFunc(event)">      <div class="form-group">
    <div class="form-row m-2" >
      <input class="form-control" id="meaning" placeholder="Meaning" style="width:75%">
      <button class="btn rounded text-left"><i class='plus-btn fas fa-plus-circle' onclick="return meanFunc(event);"></i></button>
    </div>
  </div>
  <input value="Submit" type="submit" class="btn btn-primary m-2">
</form>  

票数 0
EN

Stack Overflow用户

发布于 2020-08-13 02:21:01

代码语言:javascript
运行
复制
<button class="btn rounded text-left"><i class='plus-btn fas fa-plus-circle' onclick="meanFunc(event)"></i></button>

只需从行中删除onlick ="meanFunc(event)“即可

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63382447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档