Javascript 在jQuery中创建动态文本区域
我正在尝试创建一个动态文本区域,但我不知道如何修复keyup操作,使调整大小功能仅在a/n存在时工作 脚本:Javascript 在jQuery中创建动态文本区域,javascript,jquery,Javascript,Jquery,我正在尝试创建一个动态文本区域,但我不知道如何修复keyup操作,使调整大小功能仅在a/n存在时工作 脚本: function ResizeTextArea() { var msgTxtHeight = $("#<%=Message_txt.ClientID %>").css("height"); var containerDivHeight = $(".MsgDiv").css("max-height"); if ($("#&
function ResizeTextArea() {
var msgTxtHeight = $("#<%=Message_txt.ClientID %>").css("height");
var containerDivHeight = $(".MsgDiv").css("max-height");
if ($("#<%=Message_txt.ClientID %>").val() == "") {
$("#<%=ConversationDIv.ClientID %>").css("height", "318px");
$("#<%=Message_txt.ClientID %>").css("height","15px");
}
if (msgTxtHeight >= containerDivHeight) { return false; }
$("#<%=Message_txt.ClientID %>").css("height", $("#<%=Message_txt.ClientID %>").height() + 15);
$("#<%=ConversationDIv.ClientID %>").height($("#<%=ConversationDIv.ClientID %>").height() - 15);
}
函数ResizeTextArea(){
var msgTxtHeight=$(“#”)css(“height”);
var containerDivHeight=$(“.MsgDiv”).css(“最大高度”);
if($(“#”)val()=“”){
$(“#”)css(“高度”,“318px”);
$(“#”)css(“高度”,“15px”);
}
如果(msgTxtHeight>=containerDivHeight){返回false;}
$(“#”)css(“高度”,“$(“#”)height()+15);
$(“#”)高度($(“#”)高度()-15);
}
html:
在op的评论后更新
这看起来有点乱,混合了这样的代码。。。为什么不在ASP中创建一个对象呢?然后在全局JavaScript作用域中将其作为JSON对象进行回显,这样您就可以在整个代码中使用它。@TusharGupta us没有对您的代码进行任何更改,textarea max height将小于或等于您的div-MsgDiv。您不理解我的问题我想我没有解释太多我的问题是我想知道何时检测到“\n”我不能使用此代码bcs我不想在用户点击enter时触发它我想在字符到达结尾时动态检测text检测到a/n时存在的区域
<div id="ConversationDIv" runat="server" clientidmode="Static" style="height: 318px;
width: 100%; overflow: auto;" class='convoDiv'>
</div>
<table border="0" width="100%">
<tr>
<td align="left" style="width: 91%">
<div class="MsgDiv">
<asp:TextBox ID="Message_txt" runat="server" Width="100%" TextMode="MultiLine" CssClass="Messagetxt" onkeyup="ResizeTextArea();"></asp:TextBox>
</div>
</td>
</tr></table>
$("#Message_txt").keyup(function (e) {
if (e.which == 13) {
ResizeTextArea();
}
});
function isOverflowed(element) {
return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;
}
$("#Message_txt").keyup(function (e) {
if (isOverflowed(this)) {
ResizeTextArea();
}
});