JSON配列を返すPHPスクリプトを介してデータを収集した後、HTMlコンテンツをdivに追加しようとしています。必要なすべてのコンテンツを含む文字列変数に返されたデータを正常に解析しましたが、最初は機能しません。varsをfirebugでチェックし、すべてのロードと解析に問題はありませんでした。誰か助けてもらえますか?完全なコードのサンプルを次に示します。最初の関数は、phpスクリプトからデータをロードします...
function LoadProds(idf){
if (idf){
request = '../controllers/returnprods.php?idfamilia='+idf;
$.getJSON(request,function(data){
if (!data.resultado){
nProds = data.length;
for (i = 0; i < nProds; i++){
htmlContent = '<div class="cartigo">\n <div class="cartigodetalhe">';
h1Content = ' <h1>'+data[i].nome+'</h1>'
h2Content = '<h2>'+data[i].preco+'€</h2> \n</div>'
imgContent = '<img src="images/products/'+data[i].fullpath+'" width="183px" height="87px"> \n </div>';
divproduto = htmlContent+h1Content+h2Content+imgContent;
sProdutos = sProdutos + divproduto;
}
ncurrPos = 0;
}
});
}else{
return "(empty)";
}
}
2つ目は、click()イベントを使用して解析されたデータをロードし、外観を変更します
$(".cbotaogrande").click(function(){
activeid = "#"+$('img[src$=".png"]').attr("id");
if (activeid){
activeimg = $(activeid).attr("src");
activeimg = activeimg.substr(0,activeimg.length - 7)+".jpg";
$(activeid).attr("src", activeimg);
}
activebtn = $(this).attr("id");
activebtn ="#img"+activebtn.substr(4);
tmpsource = $(activebtn).attr("src");
$(activebtn).attr("src",tmpsource.substr(0,tmpsource.length-4)+"_on.png");
activebtn = "cgradiente"+activebtn.substr(4);
$(".cbotoestopo").attr("id",activebtn);
$(".clogo").attr("id",activebtn);
LoadProds($(this).attr("comment")); // Calls the load data function above...
$(".cartigo").remove(); // Remove divs existentes com produtos
if (sProdutos != ''){
$("#cprodutos").append(sProdutos);
sProdutos = '';
}else{
sProdutos = '';
}
});
あなたが私を助けてくれることを願っています。前もって感謝します