2012-09-06 21 views
0

我有以下字符串:如何綁定asp:grid中的字符串中的數據?

for(#some conditions){  
## 
result += "<tr><td>" + dc + "</td><td>" + al + "</td><tr>"; 
} 

現在,我想用aspx:grid顯示負載dcal的vlaue在我的HTML輸入文本區域。

例如結果的值是:

result = <tr><td>1111</td><td>23</td><td><tr><td>22222</td><td>43</td><tr> 

現在我想用grid

dc  al 
1111  23 
222222 43 

現在顯示在下面的格式的數據,我填充使用文本區域以下命令。

<script type = "text/javascript"> 
    function submit_a() 
    { 
     $.post("../AllocationValidator.aspx", { "data": escape(validatorXML), "scenarioID": scenarioID }, function (result) { 
      alert("Data Saved!"); 
      $("#allocations").empty(); 
      $("#allocations").html(result); 
      BodyLoad(); 
     }); 
    }  
</script> 

<div id = "allocations" style = "width: 650px; padding: 10px; border: 1px solid black;height: 150px; overflow:scroll;"></div> 

我的問題是如何實現asp:grid來顯示數據?

+0

究竟是什麼問題?網格在哪裏? –

+0

沒有網格,但我想把它放在給定的ID,即「allocatestatus」 –

+0

你的問題不清楚 –

回答

2

如果您只是想在GridView控件中顯示檢索到的數據。您可以將數據源綁定到控件或以編程方式添加列和行。

您可以綁定實現IListSource或IList接口的任何數據源。這意味着您不能直接綁定您的result字符串,如問題標題中所述。您必須將檢索到的數據存儲在兼容的數據結構中,例如List,以將其綁定爲數據源。

要使用數據綁定,您可以將dcal保存爲類似字典的數據結構。假設你只想顯示兩列數據。

var data = new Dictionary<string, string>(); 
for (/* Condition */) 
{ 
    data.Add(dc, al); 
} 
grid.DataSource = data; 
grid.DataBind(); 

相應的電網將

<asp:GridView ID="grid" runat="server" AutoGenerateColumns="false"> 
<Columns> 
    <asp:BoundField DataField="Key" HeaderText="dc"/> 
    <asp:BoundField DataField="Value" HeaderText="al" /> 
</Columns> 
</asp:GridView> 

如果您正在使用一個foreach生成您result字符串,應該比你看的可能性,使用對象的foreach語句作爲數據源。

相關問題