Что делает этот оператор jQuery? - PullRequest
0 голосов
/ 03 мая 2011
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>  

Значение «Дональд Дак» должно быть в состоянии применить к остальным элементам выбора с этой точки в списке иниже (таким образом, причина для значений cntr> = cntr.

У меня есть кто-то в офисе, который собирается осмотреть это со мной утром, поэтому не тратьте слишком много времени на это. Iпросто надеялся получить преимущество.

TIA

1 Ответ

0 голосов
/ 03 мая 2011

Оказывается, что в некоторых числах vpmo есть завершающий пробел (таким образом импортируются vpmo). Мы применили обрезку к заявлениям, и теперь это работает как ожидалось. Спасибо за обзор, ребята.

...