使用表单id进行jQuery初始化

时间:2012-12-18 10:42:37

标签: jquery

我正在使用JSF中的Composite Components,并遇到了我需要使用的JavaScript问题。我有以下脚本:

$(document).ready(function() {
   $("#form_test\\:text_auto").bind("keyup",function() {
      setTimeout(function() {
         send_ajax();
      }, 500);
   });
});

为了能够在不同的地方使用它,使用不同的表单id而不是prependId = false;我需要以某种方式使用表单id初始化脚本(在此示例中为“form_test”)。

使用jQuery绑定诸如“keyup”之类的事件效果很好,所以如果可能的话我想继续使用该机制。有可能以某种方式动态设置表单ID吗?

3 个答案:

答案 0 :(得分:0)

你可以尝试类似的东西:

$(document).ready(function() {
   $("form\\:text_auto").bind("keyup",function() {  // this will apply for each form tag
    // if you need something from the form use $(this) variable  
    setTimeout(function() {
        send_ajax();
    }, 500);
});

答案 1 :(得分:0)

这样的事情:

$(document).ready(function() {
   bindKeyupOnForm("form_test");
});

function bindKeyupOnForm(formId) {
    $("#" + formId + "\\:text_auto").bind("keyup",function() {
        setTimeout(function() {
            send_ajax();
        }, 500);
    });
}

答案 2 :(得分:0)

感谢您的回答。但是,我通过在脚本中直接设置表单id#(cc.attrs.formId)找到了另一种解决方法。