我想知道是否有一种方法使用jquery $。将button1元素绑定到button2,这样当我单击button2时我可以访问button1对象和提取属性等。
我拥有的绑定代码在以下函数中,这是通过单击button1调用的,并且this对象作为
传入:button1:
$(".acc-offer-clicked").click(function(e){
e.preventDefault();
getCourierList(this);
});
function getCourierList(obj) {
//Bind the accept button to the choose-courier button
$.data($("#choose_courier"), "accept", obj);
}
以后当button1被点击时,我希望提取button2作为
$("#choose_courier").click(function(e){
e.preventDefault();
var acceptbutton = $(this).data("accept");
});
此时accept-button为undefined。我以前已经能够绑定{}
类型对象,但我从未尝试过实际的元素。这可能吗?
我想问题出在
$.data($("#choose_courier"), "accept", obj);
将数据绑定到新创建的jQuery对象 $("#choose_courier")
。然后,当您试图检索它时,您创建另一个对象,它没有任何data
关联。
文档给出以下$.data
签名:jQuery.data( element, key, value )
。不是 jQuery对象,但元素。
为解决您的问题,您可以使用$(selector).data()
。
我在这个示例中包含了这两个变体。