对多个元素的行为相同。
// html
<div id="">
<input type="hidden" value="1258" /> value of user id to make friend
</div>
<div id="">
<input type="hidden" value="2595" />
</div>
<div id="">
<input type="hidden" value="2563" />
</div>
现在我想检查点击哪个div添加好友并获取隐藏值并使用此代码将其发送到服务器
$().click(function(){
$x=$("hidden").value(); // the value is friendID
//then send $x to the server using Ajax
});
我试过像这样使用它
$("#div1,#div2,#div3").click(function(){
$x=$("hidden").value(); // the value is friendID
//then send $x to the server using Ajax
});
但我有更多的元素代码增长,它不是动态的,也是同样的事情,如果我想让行为像按钮,我有多个像按钮我应该知道哪个帖子和哪个像
答案 0 :(得分:4)
你的选择者都错了。 div
元素没有任何id
属性,因此选择它们将无法正常工作。其次,您希望使用:hidden
或input[type="hidden"]
来选择隐藏的输入。最后,要获取表单元素的值,请使用val()
,而不是value()
。
如果您想要使其动态化,那么代码将适用于x
个div
个元素,请使用class
来识别它们,然后使用this
处理程序,用于访问引发事件的元素,如下所示:
<div class="foo">
<input type="hidden" value="1258" /> value of user id to make friend
</div>
<div class="foo">
<input type="hidden" value="2595" />
</div>
<div class="foo">
<input type="hidden" value="2563" />
</div>
$('.foo').click(function(){
x = $(this).find('input[type="hidden"]').val();
alert(x)
});
答案 1 :(得分:-1)
试
<div id="div1">
<input type="hidden" value="1258" /> value of user id to make friend
</div>
$("[id^=div]").click(function() {
$x=$(this).find("[type=hidden]").val();
});
或
<div class="classSelector">
<input type="hidden" value="1258" /> value of user id to make friend
</div>
$(".classSelector").click(function() {
$x=$(this).find("[type=hidden]").val();
});