2013-05-30 17 views
0

我正在用jQuery從php文件中提取數據,我希望它能夠在表中動態顯示。 是否有另一種方法來做到這一點,以便jQuery自己創建表格行。 這是我嘗試..用php輸出動態添加jQuery的行

部分從HTML文件:

<table id="tejbl"> 
<tr id="naslov"> 
<td><h3>NAME</h3></td> 
<td><h3>FAT</h3></td> 
<td><h3>FIBER</h3></td> 
<td><h3>SUGARS</h3></td> 
</tr> 


<tr> 
<td id="table_0"></td> 
<td id="table_1"></td> 
<td id="table_2"></td> 
<td id="table_3"></td> 
</tr> 

</table> 

部分來自js文件:

$('#jedinice_butt').click(function(){ 
var odabrano = $("#dropdown option:selected").text(); 

var uneseno = $("#input_jedinica").val(); 
$('#tablica').show(); 
//$('#add_button').show(); 


if(odabrano === "g"){ 
    $.post('name.php', { 
     value: value 
    }, function (data) { 

     $('#table_0').html(data); 
    }); 


    $.post('nutritional_value.php', { 
     value: value 
    }, function (data) { 

     $('#table_1').append(data * (parseFloat(uneseno,10)/100)); 
    }); 

    $.post('fiber.php', { 
     value: value 
    }, function (data) { 

     $('#table_2').append(data * (parseFloat(uneseno,10)/100)); 
    }); 

    $.post('sugars.php', { 
     value: value 
    }, function (data) { 

     $('#table_3').append(data * (parseFloat(uneseno,10)/100)); 

    }); 



} 

我試圖解決的問題是,一旦我再次點擊按鈕它只是增加了相同的值,我希望它添加在一個新的行中。 所以基本上你如何動態地爲這些輸出添加行 我嘗試了幾種方法但沒有成功I事件試圖沒有在HTML文件中,所以它是從jQuery生成的,但我顯然做錯了什麼。

回答

1

要實現這一點,您可以修改DOM。

首先擺脫

<tr> 
<td id="table_0"></td> 
<td id="table_1"></td> 
<td id="table_2"></td> 
<td id="table_3"></td> 
</tr> 

可以動態元素添加到文檔中。你可以做這樣的事情:

if(odabrano === "g"){ 

$.getJSON("SCRIPT_URL.php?value="+encodeURI(VALUE_VARIABLE),function(data){ 

    var ttr = document.createElement("tr"); 
    var dt = ["fat","fiber","sugar"]; 
    var ttd = document.createElement("td"); 
    ttd.innerText=data["name"]; 
    ttr.appendChild(ttd); 
    for(var i=0,l=dt.length;i<l;i++){ 
     var ttd = document.createElement("td"); 
     ttd.innerText = data[dt[i]] * (parseFloat(uneseno,10)/100); 
     ttr.appendChild(ttd); 
    } 
    $("#tejbl").append(ttr); 

}); 

} 

的PHP腳本的說明: 發送的數據是這樣的:

$results = array(); 
$results["name"]=$NAME_YOU_JUST_GOT_FROM_SOMEWHERE; 
$results["fat"]=$FAT_YOU_JUST_GOT_FROM_SOMEWHERE; 
$results["fiber"]=$FIBER_YOU_JUST_GOT_FROM_SOMEWHERE; 
$results["sugar"]=$SUGAR_YOU_JUST_GOT_FROM_SOMEWHERE; 
//Send it to the client in json format: 
echo(json_encode($results)); 
+0

我得到這個錯誤: [12:24:54.296 ] TypeError:w是null @ http://localhost/tust/index2.html:141 – Filkatron

+0

哦,我的不好... 我已經更新了答案,看看添加糖和纖維的帖子請求,我已經使用錯誤的ID,它現在應該工作。 – potato25

+0

感謝您的幫助,但即使使用編輯的代碼,我也會得到相同的錯誤:S – Filkatron