通过JSON将值设置为td

时间:2014-08-03 05:34:01

标签: javascript php jquery html json

尝试从我的JavaScript JSON设置我的td值。但是当我检查元素时,它似乎无效。然而,html只是没有价值。不确定是什么问题。尝试将id更改为类,但它也没有用。

$(document).ready(function(){
$(".login_a").click(function(){
    var test = $(this).attr('data-id');
    var topost = 'getMilestoneDetail.php='+test;
    var returnResults = $.getJSON('getMilestoneDetail.php?id='+test,function(data)
    {
        $("#td_projectName").html(data.projectName);
        $("#budget_amt").html(data.budget);
        $("#milestone_1").html(data.mileStone1);
        $("#percentage_1").html(data.percentage1);
        $("#percentage_1").val(data.percentage1);


    });
});
</script>

<div id="login_form">
<table border=1>
<tr>
<th> Project Name </th>
<td id="td_projectName">
</td> 
</tr>

<tr>
<th> Budget</th>
<td id="budget_amt"> 
</td>
</tr>
<tr>
<th>Stages</th>
<th>Payment Percentage</th>
</tr>

<tr>
<td id="milestone_1"> 
</td>
<td id="percentage_1">
</td>
</tr>

2 个答案:

答案 0 :(得分:1)

VAL不是TD的有效属性,这就是您无法设置它的原因。如果要将某些数据存储为节点的属性,请使用setAttribute存储它。例如:

Straight JS:

document.getElementById('percentage_1').setAttribute('bob', 'your uncle');

或者使用jQuery:

$('#percentage_1').attr('bob', 'your uncle');

您可以使用getAttribute或.attr来稍后获取值,例如

var bob = document.getElementById('percentage_1').getAttribute('bob');

$('#percentage_1').attr('bob');

请注意,非标准属性不会验证,并且可能不赞成,但它们是Web应用程序中常见的固定装置。 如果您不关心较旧的浏览器支持,可以使用jQuery的.data方法在节点上正确设置数据。

答案 1 :(得分:0)

.val(value)方法主要用于设置表单元素的值,例如input, select and textarea

您可以使用隐藏字段来保留值,也可以使用.text()方法获取td的文字。

<td id="percentage_1">
    <input type="hidden" id="percentage_1_val" />
</td>

$("#percentage_1_val").val(data.percentage1);

获得价值。

$("#percentage_1_val").val(); 
// or you can use $("#percentage_1").text();