如何查找具有自定义属性的按钮

时间:2015-08-10 05:50:47

标签: javascript php jquery codeigniter

点击"Send Enquiry" "provider-id"打开后,我有一个名为button的自定义属性为fancybox的按钮,该按钮具有发送查询的格式。

我想要的是,一旦发送查询,该页面上的button "Send Enquiry"应该是disabled。(打开fancybox的那个)

这里是按钮的代码

<a class='btn btn-orange' provider-id='$row->provider_id' href='#EnquiryForm' id='btnSend' onclick='fillenquiry(this)'>Send Enquiry</a></div>

一切正常,我只想disable button发送查询后

注意:实际上有多个具有相同ID的按钮,因此我必须将自定义属性设置为"provider-id"

4 个答案:

答案 0 :(得分:0)

由于您已经将按钮元素作为第一个参数传递给fillenquiry,所以只需执行

$(button).addClass("disabled");

...在该函数中(其中button是您为函数中的第一个参数赋予的任何名称)以添加Bootstrap "disabled" class

或者,将a更改为button type="button"

<button type="button" class='btn btn-orange' provider-id='$row->provider_id' id='btnSend' onclick='fillenquiry(this)'>Send Enquiry</button>

......然后

button.disabled = true;
  

注意:实际上有多个具有相同ID的按钮,因此我必须将自定义属性设置为&#34; provider-id&#34;。

如果您的确意味着您在多个元素上使用id="btnSend",那就无效HTML id必须才是唯一的。也就是说,它并没有改变上面的答案,因为我们不需要使用id来获取按钮实例。

您不需要查找此任务的按钮,但如果某些其他原因需要获取按钮实例,则可以使用属性选择器:

var $button = $('[provider-id="some-id"]');

...然后

$button.addClass("disabled");

代表a

$button.prop("disabled", true);

表示button

但是,再次,你不需要它,因为你将它传递给fillenquiry

答案 1 :(得分:0)

您可以使用:

$('a[provider-id="some-id"]').attr('disabled',true);

答案 2 :(得分:0)

您可以将fillenquiry(this)代码添加到jquery点击事件

$('a[provider-id="some-id"]').click(function(e){
    /* paste fillenquiry() code here */
    $(this).unbind("click");
});

答案 3 :(得分:0)

  1. beforeClose 关闭后立即调用但尚未启动注意:如果回调返回false,则结束将暂停。

  2. afterClose 关闭动画结束后调用

  3. 您可以从fancybox文档中找到上述方法。这可能会对你有帮助。