问题描述
我有一个<button>
元素,当单击该元素时会向页面添加一个元素。
我想做的是在此按钮内有一个<input>
,我可以在其中输入一个数字,然后单击按钮,它将添加元素的x倍,而不是在<button>
上单击x次。
在此处查看演示: :
问题是我无法在按钮内的<input>
元素内单击,而是单击了按钮。
有没有办法避免这种行为?
1楼
只是防止<input>
上的点击冒泡:
$("#count")
.click(function(e) {
e.stopPropagation();
});
2楼
我将按钮更改为div
,但仍使用$("#btn").button()
设置样式。
然后,我在#count
点击处理程序的click事件上调用stopPropagation
。
这似乎可行(在IE9,Chrome 10,FF4中),但不幸的是,当您单击文本框时,该按钮仍会闪烁。 不确定如何解决。
3楼
奇怪的主意,我怀疑那行得通。 我建议仅使用文本输入,并设置一些JavaScript来读取按下的单击/输入键。 参考
这是