0

我正在使用 JSF 中的复合组件,但遇到了关于我需要使用的 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?

4

3 回答 3

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);
});
于 2012-12-18T10:45:47.353 回答
0

像这样的东西怎么样:

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

function bindKeyupOnForm(formId) {
    $("#" + formId + "\\:text_auto").bind("keyup",function() {
        setTimeout(function() {
            send_ajax();
        }, 500);
    });
}
于 2012-12-18T10:46:11.187 回答
0

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

于 2012-12-18T15:13:02.637 回答