jquery keyup事件无效

时间:2011-01-25 21:20:03

标签: asp.net jquery sharepoint-2007

我正致力于使Sharepoint 2007应用看起来更现代化。我正在积极地使用jQuery,尽管我不是专家,但我已经学会了足够的知识。直到今天我都遇到了这个问题。这是比特:

  $(document).ready(function() {
    alert('doc ready');
    var textBox1 = $("#myTest");
    alert(textBox1);

    textBox1.keyup(function() {
        alert('key UP');
    });

    textBox1.live("keyup", function() {
        alert('keykeykey up live');
    });

});

服务器生成的html:

    <input name="ctl00$Spwebpartmanager1$g_1f2d211c_a0c3_490d_8890_028afd098cac$ctl00$myTest" type="password" id="ctl00_Spwebpartmanager1_g_1f2d211c_a0c3_490d_8890_028afd098cac_ctl00_myTest" class="gh" />

因此文档就绪处理程序触发,textbox1变量不为null,但是处理keyup事件的所有事件处理程序都没有触发?心灵卷轴......

1 个答案:

答案 0 :(得分:3)

我无效,因为id属性是ctl00_Spwebpartmanager1_g_1f2d211c_a0c3_490d_8890_028afd098cac_ctl00_myTest

尝试

var textBox1 = $("input[id$='_myTest']");

以下是一个html输入字段,其id属性以字符串_myTest

结尾

将来您的调试使用

alert(textBox1.length)

这样你可以判断jQuery对象是否为空。如果选择器没有找到任何内容,它将返回一个非空的jQuery对象。您可以通过确保.length属性为正数来测试选择器是否找到任何内容。