2013-03-15 104 views
0

我能够动态追加表格行,但在嵌入值时遇到问题。将行动态追加到HTML表格

我正在使用jinja2。

例子:

通过文本框我的输入是这样的:

日期从:20130201 * id为“txtStartDate”

为:20130205 * id为“txtEndDate”

编号:10 * id是“txtAllotNumber”

输出应该是这样的:

□20130201 10空白
□20130202 10空白
□20130203 10空白
□20130204 10空白
□20130205 10空白

  • □是复选框

  • 空白部分也应该被编辑。

这是输出这是不正确的:

20130210 20130205 10空白

这是怎么了追加表:

  var chkflg = ""; 
      var newtrtag = '<tr class="centertext getData">'; 
      newtrtag += '<td class="checkGet" style="padding-left: 20px;"><input class="chkGetData" type="checkbox" name="del_param" value="{{stay_ymd}},{{allot_number}},{{delete_flag}},{{re_release_ymd}}"></td>'; 
      newtrtag += '<input type="hidden" id="quantity{{stock_count}}" name="quantity{{stock_count}}" value="{{allot_number}}">'; 
      newtrtag += '<input type="hidden" name="save[{{stock_count}}]" value="{{stay_ymd}},{{allot_number}},{{delete_flag}},{{re_release_ymd}}">'; 
      newtrtag += '{% set delete_flag_val = '0'%}'; 
      newtrtag += '{% if delete_flag %}'; 
      newtrtag += '{% set delete_flag_val = '1' %}'; 
      newtrtag += '{% else%}'; 
      newtrtag += '{% endif %}'; 
      newtrtag += '<input type="hidden" id="delflag{{stock_count}}" name="delflag{{stock_count}}" value="{{delete_flag_val}}">'; 
      newtrtag += '<input type="hidden" id="rerel{{stock_count}}" name="rerel{{stock_count}}" value="{{re_release_ymd}}">'; 
      newtrtag += '<td style="width:70%;">'+ $("#txtStartDate").val() +' </td>'; 
      newtrtag += '<td style="width:70%;">'+ $("#txtEndDate").val() +' </td>'; 
      newtrtag += '<td style="width:70%;">'+ $("#txtAllotNumber").val() +' </td>'; 
      newtrtag += '{% set delete_flag_chk = "" %}'; 
      newtrtag += '{% if delete_flag == True %}'; 
      newtrtag += '{% set delete_flag_chk = "Released" %}'; 
      newtrtag += '{% else%}'; 
      newtrtag += '{% set delete_flag_chk = "Unreleased" %}'; 
      newtrtag += '{% endif %}'; 
      newtrtag += '<td class="colStatus">{{delete_flag_chk}}</td>'; 
      newtrtag += '<td class="releaseDate">{{re_release_ymd}}</td>'; 
      newtrtag += '</tr>'; 
      $("#list_body").append(newtrtag); 

整个tbody的代码是这样的我在那里添加它:

<tbody id="list_body"> 
{% set stock_count = 0 %} 
{% for row in release_stock_list %} 
    <tr class="centertext getData"> 
     <td class="checkGet" style="padding-left: 20px;"><input class="chkGetData" type="checkbox" name="del_param" value="{{row.stay_ymd}},{{row.allot_number}},{{row.delete_flag}},{{row.re_release_ymd}}"></td> 
     <input type="hidden" id="quantity{{stock_count}}" name="quantity{{stock_count}}" value="{{row.allot_number}}"> 
     <input type="hidden" name="save[{{stock_count}}]" value="{{row.stay_ymd}},{{row.allot_number}},{{row.delete_flag}},{{row.re_release_ymd}}"> 
     {% set delete_flag_val = '0'%} 
     {% if row.delete_flag %} 
      {% set delete_flag_val = '1' %} 
     {% else%} 
     {% endif %} 
     <input type="hidden" id="delflag{{stock_count}}" name="delflag{{stock_count}}" value="{{delete_flag_val}}"> 
     <input type="hidden" id="rerel{{stock_count}}" name="rerel{{stock_count}}" value="{{row.re_release_ymd}}"> 
     <td class="colDate">{{row.stay_ymd}}</td> 
     <td class="colAmount">{{row.allot_number}}</td> 
     {% set delete_flag_chk = "" %} 
     {% if row.delete_flag == True %} 
      {% set delete_flag_chk = "Released" %} 
     {% else%} 
      {% set delete_flag_chk = "Unreleased" %} 
     {% endif %} 
     <td class="colStatus">{{delete_flag_chk}}</td> 
     <td class="releaseDate">{{row.re_release_ymd}}</td> 
     {% set stock_count = stock_count + 1 %} 
    </tr> 
{% endfor %} 
</tbody> 

感谢您的帮助。

回答

0

通常,这种事情是通过克隆现有的行来完成的;你可能有一个你想克隆的隐藏模板行。这避免了诸如你的问题。看看this question

+0

我需要一种格式。像上面的输出一样。 – Bazinga 2013-03-15 04:42:32

+0

对不起,我不明白。你想要示例代码?或者你想要在动态添加的行中设置格式? – Paul 2013-03-18 01:51:30

+0

我想将其格式设置为与我的模板相同。就像我上面的第二个代码。 – Bazinga 2013-03-18 01:57:06