Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按钮';在文本输入元素处按enter键时,始终调用s函数_Javascript_Jquery_Html_Backbone.js - Fatal编程技术网

Javascript 按钮';在文本输入元素处按enter键时,始终调用s函数

Javascript 按钮';在文本输入元素处按enter键时,始终调用s函数,javascript,jquery,html,backbone.js,Javascript,Jquery,Html,Backbone.js,此代码表示一个html标记,用户可以在其中向其个人资料中添加一个或多个电话。因此,我使用主干添加文本字段,用户可以在其中指定它们 <form method="post" class="form-horizontal" action=".."> <!-- Here I have another text input controls --> <!-- START: backbone view --> <div id="phones

此代码表示一个html标记,用户可以在其中向其个人资料中添加一个或多个电话。因此,我使用主干添加文本字段,用户可以在其中指定它们

<form method="post" class="form-horizontal" action="..">

   <!-- Here I have another text input controls -->

    <!-- START: backbone view -->
    <div id="phones">
        <div class="phones-container">
            <!-- New phone template [label, text input] -->      
        </div>

        <!-- Add phone template button -->
        <button id="btn-add-phone">Add another phone</button>
    </div>
    <!-- END: backbone view -->
</form>
问题出在哪里?如果用户在任何文本字段按Enter键,无论它在视图范围之内还是之外,出于某种原因,
onAddPhoneTemplate()
函数将再次调用,并将另一部手机的模板添加到视图中

  • enter键上的预期行为是不执行任何操作,控制台的输出:

    enter key
    
  • 然而,按下回车键后,我在控制台上看到:

    onAddPhoneTemplate()
    enter key
    

将按钮更改为
type=button

默认情况下,按钮为
type=submit
,除非另有规定,否则当按钮放置在表单中时,将触发表单提交

当表单中存在
type=submit
时,点击
enter
也将触发表单提交

<button type="button" id="btn-add-phone">Add another phone</button>
添加另一部手机

我从没想过问题就在那里。我扫描了我的主干代码至少一个小时。非常感谢,祝你过得愉快没问题。。。我知道这条规则,但有时还是会因为弄乱它而打自己一巴掌。这是在起作用。和环境一样,但不同,所以不是完全重复。
onAddPhoneTemplate()
enter key
<button type="button" id="btn-add-phone">Add another phone</button>