如何将参数传递给此jquery?

时间:2009-12-10 10:18:46

标签: javascript jquery jquery-ui

我不知道我应该如何重写这个jquery所以我可以将参数传递给它。我想将一个id传递给函数,所以我把它放在$(".dialog" + id)

我要用<a>

来触发它
$(document).ready(function() {                 
  $(".btnCheck").live("click", function(evt) {
    evt.preventDefault();                               
    $(".dialog").dialog({
      height: 700,
      width: 600,
      closeOnEscape: true,
      title: 'prev'
    }).dialog("open");
  });           
}); 

3 个答案:

答案 0 :(得分:1)

假设你想要的是“btnCheck。

的ID
$(document).ready(function() {                 
        $(".btnCheck").live("click", function(evt) {
            evt.preventDefault();                               

            $(".dialog" + $(this).attr("id")).dialog({ height: 700, width: 600, closeOnEscape: true, title: 'prev' }).dialog("open");
        });           
    });

答案 1 :(得分:1)

假设:

<input type="button" class="btnCheck" id="btn1" value="Click Me">
...
<div id="dialog-btn1" class="dialog">
  ...
</div>

你可以这样做:

$(function() {
  $(":button.btnCheck").live("click", function(e) {
    $("#dialog-" + this.id).dialog({...});
    e.preventDefault();
  });
});

你会注意到,我给了div一个对话框,而不是使用动态类名。要获得特定的一个,因为你只想要一个(一次),一个ID是更好的选择(imho)。

此事件处理程序中的

this引用了单击的按钮,即事件的来源。

答案 2 :(得分:0)

您需要以某种方式将按钮与对话框关联起来。

如果给按钮一类按钮,对话框就会出现一个类对话框。然后,您可以将所有这些都放入一个数组中并循环遍历它们,数组中的第一个按钮将激活具有id1对话框的对话框。