实现的方式有几种。
第一种,把datatable存入Session,然后在下次请求的时候读出,再根据绑定的ID号遍历其中的某一行。
第二种,把datatable存入ViewState里面,然后在下次请求的时候读出,再根据绑定的ID号遍历其中的某一行。
第三种,在每一行第一列(模板列)放一个Hidden控件,绑定ID主键,请求时,通过在事件里使用FindControl方法取得这个Hidden控件取得ID值,然后再查询数据库,单独取这行,就得到了。
三种方法用的情况不一样,但是对于你想要的,显然第三种是最好的,也是效率最高的。
<script src=">
<input type="text" name="COUNT" value="" itemdesc="数量" onchange=getTotalPrice(this)/>
注意到您的count为text,不太适合使用onchange来触发,这会带来问题。
比如:你的原数量为20,当你想修改为15时,你会:
1、删除20 值变为“”,onchange触发
2、输入1 值变为 1, onchange触发
3、输入5 值变为 15, onchange触发
这样会触发三次,不能满足你触发一次的要求。
应该用onblur来触发。
分析你的业务,你需要计算当前行的,这样可以使用DOM的API来实现
<table border=1>
<tr>
<td>
<input type="text" value="12" onblur="getTotalPrice(this)">
</td>
<td><input type="text" value="13" onblur="getTotalPrice(this)"></td>
<td>
<input type="text" value="25">
</td>
</tr>
<tr>
<td>
<input type="text" value="1" onblur="getTotalPrice(this)">
</td>
<td><input type="text" value="2" onblur="getTotalPrice(this)"></td>
<td>
<input type="text" value="3">
</td>
</tr>
</table>
<script type="text/javascript">
function getTotalPrice(obj){
var c1 = objparentNodeparentNodechildNodes[0]childNodes[0]value;
var c2 = objparentNodeparentNodechildNodes[1]childNodes[0]value;
objparentNodeparentNodechildNodes[2]childNodes[0]value = parseInt(c1) parseInt(c2);
}
</script>
修改前面两个栏,都会自动修改第三栏
相信合你意思,加分吧
//var items = documentgetElementsByTagName("input");
<!-- 楼上牛人:1、指定下标?2、onkeydown -->
//楼主,这还繁?那加分吧,加分定制一个给你
以上就是关于从datatable里取某行某列的值全部的内容,包括:从datatable里取某行某列的值、[急]用js或者jq获取table指定行的位置、javascript中如何获得TABLE中某一行指定列的值,并触发一个事件,修改该行另外一列的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)