0

動的に生成されたdivのリストがあり、すべて一意のデータIDといくつかの画像アイコンが含まれています。アイコンをクリックすると、ボックスがポップアップ表示され、選択したアクションに応じて選択できます。これにより、ajaxを介してデータベースが更新されます。

ajax reauestが3を返したときに、最初のアイコンを変更する必要があります。

var ls="<div class='list_body'>
            <div class='lister1'>
                <img src='"+path+stat1+"' data-icon_no='1' data-status='"+split_stats[0]+"' data-job_id='"+split_stats[18]+"' />
                <img src='"+path+stat2+"' data-icon_no='2' data-status='"+split_stats[1]+"' data-job_id='"+split_stats[18]+"' />
                <img src='"+path+stat3+"' data-icon_no='3' data-status='"+split_stats[2]+"' data-job_id='"+split_stats[18]+"' />
                <img src='"+path+stat4+"' data-icon_no='4' data-status='"+split_stats[3]+"' data-job_id='"+split_stats[18]+"' />
                <img src='"+path+stat5+"' data-icon_no='5' data-status='"+split_stats[4]+"' data-job_id='"+split_stats[18]+"' />
                <img src='"+path+stat6+"' data-icon_no='6' data-status='"+split_stats[5]+"' data-job_id='"+split_stats[18]+"' />
            </div>
            <div class='lister'>"+split_stats[6]+" "+split_stats[7]+" "+split_stats[8]+"<br />["+split_stats[13]+"]"+"</div>
            <div class='lister'>"+split_stats[14]+"</div>
            <div class='lister'><a href='javascript:void(0);' class='lister_a'>View Appointment &amp; Actions</a></div>
        </div>";

(私はコードを読みやすくするためにスペースを空けようとしましたが、基本的にこれはドキュメントに追加される多くの1行にすぎません)

これまでの私のjQueryは...

$(document).on('click', '.submit_acc', function(){
        var selected=$('.conf_app').val();
        var agent=$('body').data('agent_id');

        if(selected==0)
        {
            alert("Please make a selection from the available options.");
            return;
        }

        var reason=$('.ag_com').val();
        var data="agent_id="+agent+"&selected="+selected+"&reason="+reason+"&job_id="+gl_job_id;
        alert(data);
        $.ajax({
            type:"POST",
            url:"admin_includes/conf_job.php",
            data:data,
            context:gl_job_id,
            success:function(html){

                if(html=="3")
                {
 //this is where I can't get it to work......
                    $('.lister1[data-job_id="'+gl_job_id+'"'').find('img').eq(0).src("images/icons/start_green.png");

                }
            }
        })//end ajax

});

画像を変更する行を特定するのに苦労しています。

gl_job_idは、data-job_idの識別子として使用されるjob_idを保持するグローバル変数です(意味がありますか??)。

現在、これはセレクター行でエラーをスローしていますが、明らかに構文が完全に間違っています:(

4

1 に答える 1

1

ここで間違ったセレクター:

$('.lister1[data-job_id="'+gl_job_id+'"'').find('img').eq(0).src("images/icons/start_green.png");

で選択しようとしdivているdata-job_id場合も、1つ削除'して追加します]

このようなものは次のようになります。

$('.lister1 [data-job_id="'+gl_job_id+'"]').attr('src', "images/icons/start_green.png");

このコードを選択しdiv、検索して属性data-job_idを設定しますsrc

于 2012-10-02T09:39:33.310 に答える