我有一个包含各种文本框的网格视图。我需要添加所有文本框值并将结果显示在单独的文本框中。我需要为此使用java脚本。请帮帮我。
问问题
160 次
3 回答
1
您的网格基本上是客户端的表格,因此使用您的网格 ID 访问表格,然后遍历其行以获取您的文本框值。
于 2013-07-04T07:28:52.870 回答
0
尝试这个
标记:
<table>
<tr>
<td>text box 1</td>
<td><input type="text" class="textbox" value="value1" /></td>
</tr>
<tr>
<td>text box 2</td>
<td><input type="text" class="textbox" value="value2" /></td>
</tr>
<tr>
<td>text box 3</td>
<td><input type="text" class="textbox" value="value3" /></td>
</tr>
<tr>
<td>text box 4</td>
<td><input type="text" class="textbox" value="value4" /></td>
</tr>
<tr>
<td>text box 5</td>
<td><input type="text" class="textbox" value="value5" /></td>
</tr>
<tr>
<td>text box Final</td>
<td><input type="text" class="textbox" value="value5" /></td>
</tr>
</table>
<input type="text" id="final" />
脚本:
<script type="text/javascript">
var getp = document.getElementsByClassName('textbox');
var temp = "";
for(i=0;i<getp.length;i++)
{
temp +=getp[i].value+" ";
}
document.getElementById('final').value = temp
</script>
于 2013-07-04T07:43:15.820 回答
0
我不完全确定您的意思是:
我有一个包含各种文本框的网格视图。我需要添加所有文本框值并将结果显示在单独的文本框中。
当您使用网格视图时,它实际上应该以连贯的方式填充您的数据存储。除非您的评论表明您使用的文本框不是传统的网格视图。
你可能想看看Knockout。这个特殊的Java Script库非常强大且动态 - 一个示例如下:
标记:
<div data-bind='simpleGrid: gridViewModel'> </div>
<button data-bind='click: addItem'>
Add item
</button>
<button data-bind='click: sortByName'>
Sort by name
</button>
<button data-bind='click: jumpToFirstPage, enable: gridViewModel.currentPageIndex'>
Jump to first page
</button>
剧本:
var initialData = [
{ name: "Well-Travelled Kitten", sales: 352, price: 75.95 },
{ name: "Speedy Coyote", sales: 89, price: 190.00 },
{ name: "Furious Lizard", sales: 152, price: 25.00 },
{ name: "Indifferent Monkey", sales: 1, price: 99.95 },
{ name: "Brooding Dragon", sales: 0, price: 6350 },
{ name: "Ingenious Tadpole", sales: 39450, price: 0.35 },
{ name: "Optimistic Snail", sales: 420, price: 1.50 }
];
var PagedGridModel = function(items) {
this.items = ko.observableArray(items);
this.addItem = function() {
this.items.push({ name: "New item", sales: 0, price: 100 });
};
this.sortByName = function() {
this.items.sort(function(a, b) {
return a.name < b.name ? -1 : 1;
});
};
this.jumpToFirstPage = function() {
this.gridViewModel.currentPageIndex(0);
};
this.gridViewModel = new ko.simpleGrid.viewModel({
data: this.items,
columns: [
{ headerText: "Item Name", rowText: "name" },
{ headerText: "Sales Count", rowText: "sales" },
{ headerText: "Price", rowText: function (item) { return "$" + item.price.toFixed(2) } }
],
pageSize: 4
});
};
ko.applyBindings(new PagedGridModel(initialData));
这是直接来自Knockouts页面的精彩文档之一,可在此处找到。无论如何,希望这对您有所帮助-您实际上可以利用该项目的多个方面来满足您想要的目标。唯一的区别是我假设的文本框的实现是修改内部网格数据。希望这可以为您指明一个好的方向。
于 2013-07-04T07:40:07.290 回答