動的に生成された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 & 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を保持するグローバル変数です(意味がありますか??)。
現在、これはセレクター行でエラーをスローしていますが、明らかに構文が完全に間違っています:(