我正致力于使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事件的所有事件处理程序都没有触发?心灵卷轴......
答案 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
属性为正数来测试选择器是否找到任何内容。