这个jQuery语句在做什么?

时间:2011-05-02 21:58:05

标签: jquery coldfusion-8

function setReplicate()  
{
    $('.replicate').live("click",function(){  
    var nm=$(this).attr('name');  
    var cntr=$(this).attr('cntr');  
    var vpmo=$(this).attr('vpmo');  
    var vl=$(this).parent().prev().find("select").val();  
    $('[name="'+nm+'"][vpmo="'+ vpmo + '"]').each(function() {  
    if ($(this).attr("cntr") >= cntr)   
    $(this).parent().prev().find("select").val(vl);  
    });  
    });  
}

项目编号包含分配给项目的系统。每个系统都有关于它的详细信息,并通过循环表输出。表格中有一个选择列表 - 有些列表会预先填充,但有些则不会。其中包括选择列表和带有jQuery选择器的图标,以便在单击图标时,选择列表中的值将应用于项目中的其他系统。只要选择列表中的值没有预先填充的值(在页面加载期间从数据库中读取 - noajax或其他操作正在发生),此函数就可以正常工作。没有生成错误,如果我发出警报,我会得到我期望的值,直到

if ($(this).attr("cntr") >= cntr)  
    $(this).parent().prev().find("select").val(vl);  
  });

所以我怀疑这个问题就在这里。

为coldfusion自定义标记生成以下代码,这是FF在查看生成的源代码时看到的内容:

<select name="resource" id="resource_12345_200002" class="resource_12345" selection="">
<option>Donald Duck</option
<option>Mickey Mouse</option>
...
<option>Goofy</option>  
</selected>

<select name="resource" id="resource_12345_200003" class="resource_12345" selection="Donald Duck">  
<option select="selected">Donald Duck</option>  
<option>Mickey Mouse</option>  
...  
<option>Goofy</option>  
</select>  

值'Donald Duck'应该可以应用于列表及其下方此点的剩余选项(因此cntr&gt; = cntr值的原因。

我办公室里有人会在早上和我一起看这个,所以不要花太多时间看这个。我只是希望能够先行一步。

TIA

1 个答案:

答案 0 :(得分:0)

结果发现一些vpmo数字中有一个尾随空格(vpmo正在以这种方式导入)。我们对语句应用了一个修剪,现在这是按预期执行的。感谢评论家。