0

深くネストされたDOMで開かれるajaxウィンドウに苦労しています。私はjqueryが得意ではないので、ここで助けを見つけようとしています。jWindow は ajax-content をクリックすると新しいウィンドウを開くことになっています。テストのために、最初の DIV のすぐ下にリンクを配置しました。これは完璧に機能します!!! 次に、上のテストと同じ a-tag を含む Number を持つ 1 つの coloum を含む TABLE を生成するコードを追加しました。これは動作しません。

これはDOMのコピーです(見つけやすくするために、2つの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 にネストされたものは機能したくありません。

Document ready のコードは次のとおりです。

    $(".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 タグのすべて (トップ サンプルとネストされたもの) を見つけました。だから、私は完全に道に迷い、絶望しています。これらのネストされたリンクが機能しない理由がわかりません。

誰かが解決策を持っていれば、私はとても素晴らしいです.

よろしくお願いします、ジョー

4

1 に答える 1

-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(){// handler in $('#foo #foo1').parent().each(function(){// を実行します要素にアクセスし、li に戻り、それらすべてをループします $('#foo2',this).show();// foo1 をクリックすると、foo2 が表示されます (例として) }); },function() {// ハンドラ出力 $('#foo #foo1').parent().each(function(){ $('#foo2',this).hide(); }); }); これが多少役立つことを願っています

于 2012-02-29T21:18:29.233 に答える