2011-08-01 31 views
0

我的窗体中有五个$ _POST隐藏字段,它们包含用户选择的图标的id名称。 如果用户返回页面,我想再次将这些图标标记回去。 我似乎不明白如何做到这一点,(标记为问题)。jQuery:试图通过它的ID字符串检索对象

var i=0; 
while($('#field' + i + 1 + '_icon_id').val() != '') { 
    $('img.selectable').filter(function() { 
     // PROBLEM IS HERE (I THINK) 
     return $(this).attr('id') == $('#field' + i + 1 +'_icon_id').val(); 
    }).css('border','3px solid ' + BLACK_COLOR); 
    i++; 
} 

此外,有谁能给我一些建议,我该如何去调查我的jQueries?这些可以调试吗?

在此先感谢!

回答

1

这取决于您的浏览器;如果您使用的是最新的浏览器,那么通常您可以按F12打开开发人员窗口。

在Chrome中,其中一个选项卡称为脚本。您可以进入该屏幕并找到您的线路,然后单击线路号码以设置断点。 一旦断点激活,您可以在屏幕打开控制台底部点击按钮,这可以让你快速评估JavaScript函数,所以你可以键入

"#field' + i + 1 + '_icon_id' 

,它会显示答案。 这是我使用Firefox的“萤火虫”开发商窗口:

>>> i = 0 
0 
>>> '#field' + i + 1 + '_icon_id' 
"#field01_icon_id" 

添加包围显示了这个结果:

>>> i = 9 
9 
>>> '#field' + (i + 1) + '_icon_id' 
"#field10_icon_id" 
+0

谢谢!很有帮助! – Ted

2

我怀疑有关下列选择线

$( '#字段' + I + 1 + '_ icon_id')

它应该是这样的

$( '#field'+(i + 1)+'_ icon_id')

+0

这是正确的,假设'我= 1',在第一种情况下字符串将被评估为'#field11_icon_id',第二个评估为'#field2_icon_id'。 –

+0

工程!谢谢 ! – Ted