今天用一个按钮绑定onclick事件的时候,总是闪一下就没了,后来才知道原来是把button放进了表单的标签中!
<form>
<input type = "text" name = "row" size="4px" id="txt1" />行
<input type = "text" name = "column" size="4px" id="txt2" />列
<br><br>
<button onclick="Set()">确定</button>
</form>
这样的话其实相当于一点击按钮,就触发onclick事件,button会跟随表单一起提交,相当于刷新页面,搜索到:button的语义很明确,就是一个按钮不含数据,作用就是用户交互。但它也有type和value属性。 type的默认值是submit,所以点击一个button会引起表单提交:
只是闪一下就没了
提交表单需要刷新页面:
可以看作场景的切换,当前场景(提交数据)交互结束了,切换到新场景(显示数据),浏览器的表现形式就用了刷新页面。
<form>
<input name='key'>
<button>确定</button>
</form>
所以要把button按钮放到表单外面
<form>
<input type = "text" name = "row" size="4px" id="txt1" />行
<input type = "text" name = "column" size="4px" id="txt2" />列
<br><br>
</form>
<button οnclick="SetupTable()">确定</button>
<script type="text/javascript">
这样通过`
var r = document.getElementById("txt1").value;
var c = document.getElementById("txt2").value;
就可以获取到 行数和列数啦!