Окно ajax не работает, когда тег глубоко вложен в DOM

Я борюсь с окном ajax, открывающимся в глубоко вложенном DOM. Я не так хорош в jquery, поэтому я пытаюсь найти помощь здесь. Предполагается, что jWindow при нажатии открывает новое окно с ajax-контентом. Для тестирования я поставил ссылку под первым DIV. ЭТО РАБОТАЕТ ИДЕАЛЬНО!!! Затем я добавил код, чтобы сгенерировать TABLE с одним столбцом с Number, содержащим один и тот же a-тег в качестве теста сверху. ЭТО НЕ РАБОТАЕТ.

Вот копия DOM(я поместил горизонтальные правила вокруг двух a-тегов, чтобы их было легче найти):

 <div id="content">
<p>

<a class="get_detail_bill_window" bnr="177" shop="2" href="#">Text Ajax</a>

</p>
<div id="form_selection">
<div class="ui-widget ui-widget-content ui-corner-all" style="padding: 5px; font-size: 1em; width: 1200px;">
<div class="t_fixed_header_main_wrapper ui-widget ui-widget-header ui ui-corner-all">
<div class="t_fixed_header_caption ui-widget-header ui-corner-top">
<div class="t_fixed_header_main_wrapper_child">
<div class="t_fixed_header ui-state-default ui" style="border: medium none; font-weight: normal;">
<div class="headtable ui-state-default" style="margin-right: 15px;">
<div class="body ui-widget-content" style="height: 340px; overflow-y: scroll;">
<div>
<table id="atcs_sort" style="width: 1182px;">
<colgroup>
<tbody>
<tr>
<td class="ui-widget-content">2011-10-16</td>
<td class="numeric ui-widget-content">

<a class="get_detail_bill_window" bnr="341" shop="2" href="#">341</a>

</td>
<td class="numeric ui-widget-content">02:25:08</td>
<td class="numeric ui-widget-content">2011-10-16</td>

Если вы посмотрите на эти 2 якоря, они абсолютно одинаковы. Но тот, который вложен в DOM, не хочет работать.

Вот код готового документа:

    $(".get_detail_bill_window").on({
click: function() {
    var shop=$(this).attr('shop');
    var bnr=$(this).attr('bnr');
    alert("bin im Click - Shop:  "+shop+" Billnr:  "+bnr);

var a = $.jWindow
({ 
    id: 'detail_bill', 
    title: 'Details of Bill-Nr.: '+bnr, 
    minimiseButton: false, 
    maximiseButton: false, 
    modal: true,
    posx: 450, 
    posy: 50, 
    width: 700, 
    height: 200, 
    type: 'ajax', 
    url: 'sge_detail_bill.php?s='+shop+'&bnr='+bnr
}).show(); 


    a.update();
}
});

Я попытался это, чтобы увидеть, если у селектора может быть проблема:

var pars = $(".get_detail_bill_window");
for( i=0; i<pars.length; i++ ){
   alert("Found paragraph: " + pars[i].innerHTML);
}

Но я нашел все (верхний образец и вложенные) a-тегов с этим классом. Итак, я полностью потерян и отчаялся. Не знаю, почему эти вложенные ссылки не работают.

Если у кого-то есть решение, я был бы очень признателен.

Большое спасибо заранее, Джо

1 ответ

Какой твой вопрос задан коротко? перефразировать плз. но в случае, если я правильно понял, вы хотите зациклить все элементы в вашем DOM, скажем, php сделал его похожим на <.div id = 'foo'> <.ul> <.li><. span id = 'foo1' ><./ span><. span id = 'foo2'><./ span><./ li> <.li><./ li> <.li><./ li> <./ ul> <. / DIV>

и для доступа к каждому из внутренних элементов выполните $('#foo foo1').click(function(){// обработчик в $('#foo #foo1').parent().each(function(){// получить доступ к элементу, вернуться к li, просмотреть все из них $('#foo2',this).show();// по щелчку foo1, foo2 покажет (как пример) }); },function(){// обработчик из $('#foo #foo1').parent().each(function(){ $('#foo2',this).hide(); }); }); надеюсь, это поможет несколько

Другие вопросы по тегам