jQuery .change()不在textarea上工作

Jam*_*1x0 5 forms jquery text textarea input

这是我第一次询问StackOverflow,但我目前正在讨论一些我正在创建的公司代码.它根本不接受.change()或绑定到keyup.我之前没有遇到任何问题,但它今天不再适用于我.查看我的代码,看看是否有任何可能导致问题的内容.

抱歉格式化,我是新的.

var currentContent = "null";
var customeri = "";
var optionsi = "";
var equipmenti = "";
var picturei = "";
$(document).ready(function() {
    $("#preview").hide();
    $("#previewPane").hide();
    $("#previewHeading").hide();
$(".uiFonts").click(function() {
    var clickedID = $(this).attr("id");
    if(clickedID !== null) {
        $("#main").hide();
        loadContent(clickedID);
    }
});

$("#Equipment").bind('change keyup', function() {
        equipmenti = $(this).val();
                    $("#preview").html('<br /><span class="reg">Customer Info<br /></span>'+customeri+'<br /><br /><span class="reg">Options<br /></span>'+optionsi+'<br /><br /><span class="reg">Equipment<br /></span>'+equipmenti+'<br /><br /><span class="reg">Picture:<br /></span><img src="'+picturei+'" />');
});
});
function loadContent(cID) {
$("#main").load(cID + ".html", function() {
    $("#main").slideDown(1500);
    $("#preview").fadeIn(1500);
    $("#previewPane").fadeIn(1500);
    $("#previewHeading").fadeIn(1500);
    currentContent = cID;
});
}
Run Code Online (Sandbox Code Playgroud)

包含textareas的.html文件如下:

<p><span class="reg">Customer Info - Name, Address, Phone, Email</span><br />
<textarea name="Customer Info" class="textAreas inputs" id="Customer"></textarea>
<br />
<br />
<span class="reg">Trailer Options</span>
<br />
<textarea name="Options" class="inputs textAreas" id="Options"></textarea>
<br />
<br />
<span class="reg">Trailer Equipment</span>
<br />
<textarea name="Equipment" class="inputs textAreas" id="Equipment"></textarea>
<br>
<br>
<span class="reg">Picture URL</span></p>
<input type="text" id="picture" class="inputs"></input>
Run Code Online (Sandbox Code Playgroud)

我一直尝试将它们绑定在一起,如:

$(".inputs").change(function() {
    customeri = $("#Customer").val();
    optionsi = $("#Options").val();
    //etc
Run Code Online (Sandbox Code Playgroud)

Jam*_*1x0 2

加载外部 .html 文件时,jquery 无法定期访问它并对它应用操作。出现这个问题的原因是,在触发器 $(document).ready 中,它在加载之前找不到指向 .html 中找到的 id 的链接,如果您在文档之后调用外部 .html,那么它就找不到它了。准备好了。

解决方法是将 .change 包含在单独的 jquery 函数中,或者仅在文档加载完成之前加载 .html。