c#+asp.net中如何利用js或者jquery,动态调整textbox控件的高度呢?

c#+asp.net,页面中有textbox作为输入控件。<asp:TextBox ID="InvestXMYQ" runat="server" Rows="5" TextMode="MultiLine"></asp:TextBox>
想在旁边增加两个小图片,一个加号一个减号,点击加号时,这个textbox会自动的增加两行(rows增加,输入空间变大),点击减号,textbox会自动减少两行(rows变小,输入控件变小,最小不小于3行),是为了适应输入内容多少的。
这个如何实现?谢谢

第1个回答  2011-04-28
给html的实现,.net中,把$("#InvestXMYQ")改成$("#<%=InvestXMYQ.ClientID%>")
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script src="js/jquery-1.4.4.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
$("#add").click(function(){
var rows = $("#InvestXMYQ").attr("rows") + 2;
$("#InvestXMYQ").attr("rows",rows);
});

$("#delete").click(function(){
var rows = $("#InvestXMYQ").attr("rows") - 2;
if(rows>3){
$("#InvestXMYQ").attr("rows",rows);
}
});
});
</script>
</head>
<body>
<div><div id="add">+</div>   <div id="delete">-</div></div>
<textarea name="InvestXMYQ" rows="5" id="InvestXMYQ"></textarea>
</body>
</html>追问

这个没有反应,不过:把$("#InvestXMYQ")改成$("#")很有帮助
不知道为什么没反应

追答

不知道你是怎么写的,我这在ie8,Firefox下测试通过。点+,-号增加减少,就是这个+,-号小了点而已

追问

我确实试验过了,html的,按照您写的的确可以
但是在.net中就是不行,没有反应

追答

那估计是你写法不对,最好把代码贴出来

追问

在css.js页面中,代码是:$("#imgPlus").click(function () {
$("#region").slideToggle("slow");//这句话我目的是看看是否进入到这个函数(确实执行了)
var rows = $("#InvestXMYQ").attr("Rows") + 2;//改为$("#")也是一样,rows的值都是NaN
$("#").attr("Rows", 10);
});

追答

有 这样的语法不要放在js文件里面,这是aspx里面的写法在js文件里面是不会编译成真正的控件id的。在js写代码的话,只能用固定的id或者是在.net 4.0中控件加上clientidmode="Static",就可以在js文件中直接用$("#InvestXMYQ")

本回答被提问者采纳
第2个回答  推荐于2016-11-23
<script type="text/javascript">
function addRows(val){
var currentRow = $("#InvestXZMYQ").attr("Rows");
var modifyRow;
//自己可以判断最大增加到多大停止,减少到多少停止
val == 1 ? modifyRow = parseInt(currentRow)+2:modifyRow=parseInt(currentRow)-2;
$("#InvestXZMYQ").attr("Rows",modifyRow.toString());
}
</script>追问

结合shenchaoliang达人的回答,把$("#InvestXMYQ")改成$("#"),可以实现了
但是,我有好几个textbox需要进行这样的操作,因此,这个addRows(val)我想修改一下,加上参数,就是那些textbox的id,那么该如何写呢?addRows(val,txtName)(然后这个txtName这个参数如何写到函数里?)

追答

$("#"+txtName).attr

相似回答