我的<a>
包含<input type="text">
点击<a>
将提交父表单,<a>
中的输入是数量,因为它现在正在尝试更改金额,它将触发表单。我知道我怎么能做到这一点,但我不知道如何完成jquery,所以我会赞美一些帮助
这是我到目前为止所得到的
$(document).ready(function() {
$('.submit-parent-form').click(function() {
alert($(this).children('#quantity').val());
});
$('.input-a-tag').focus(function(){
$(this).parent('.submit-parent-form') //here i need to prevent the click
});
});
HTML
<a class="submit-parent-form"><input id="quantity" type="text" class="input-a-tag" value="1" /></a>
修改
我看到的并不是我的解决方案根据<a>
获得焦点之前的点击,以及我如何能够做到的任何想法,我的想法不会如何工作
编辑2
问题是,当我尝试进入a标签中的输入时,尝试更改数量
答案 0 :(得分:4)
试试这个:
$('.input-a-tag').click(function(event){
event.stopPropagation();
});
这应该点击输入元素,而不是传播给它的父级。
答案 1 :(得分:1)
var prevent = false;
$(".submit-parent-form").click(function(e){
if(prevent)
e.preventDefault();
else
alert($(this).children('#quantity').val());
});
$(".submit-parent-form").focus(function(){
prevent = true;
});
$(".submit-parent-form").blur(function(){
prevent = false;
});
了解它的工作原理
编辑: 我添加了在激活h http://jsfiddle.net/zND4B/6/之前显示的警报 请注意,a可以没有href。
答案 2 :(得分:-1)
简单的方法是:
$("#ElementName").css("pointer-events","none");