我通过用.replaceWith()textareas
方法替换一些divs
来将JQuery
添加到html页面。
我想将textareas
自动增长作为用户类型。
问题是我使用的自动增长库仅适用于dom-ready,因此我无法将我的自动增长库应用于我的textareas
,因为它们是动态生成的。
我的divs
被textareas
替换后可用于应用我的自动增长库,是否有任何类型的事件?
答案 0 :(得分:2)
答案 1 :(得分:2)
您必须使用事件处理程序来捕获textareas的更改(即使它们是动态生成的),例如
jQuery(function($){
// dom ready
$("body").on("input propertychange","textarea",function(event) {
// here goes your autogrow code
});
});
中查看行动
或在这里
jQuery(function($) {
// dom ready
$("body").on("input propertychange", "textarea", function(event) {
// here goes your autogrow code
alert("changed");
});
$("#addTextArea").click(function(ev) {
$("#textareas").append("<br/><textarea></textarea>");
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="textareas">
<textarea></textarea>
</div>
<button id="addTextArea">Add textarea</button>
&#13;
答案 2 :(得分:1)
您可以使用$.holdReady()
,然后在所有DIV更改为textareas后释放ready函数。
//code to prevent .ready() from firing
$.holdReady( true );
//code that releases (essentially triggers) .ready()
//use this in the callback function once your conversion
//from DIVs to textareas completes
$.holdReady( false );