javascript - jQuery().change 如何与 ajax 配合使用?

标签 javascript jquery ajax

我有一个输入字段,我使用 ajax 添加到 html 中:

function WritePrices(categories) {
    var strResult = "from: <input class=\"price\" type=\"text\" id=\"minCost\" value=\"" + categories.MinPrice + "\" />";
    strResult += "from: <input class=\"price\" type=\"text\" id=\"maxCost\" value=\"" + categories.MaxPrice + "\" />";
    $("#price-range").html(strResult);
}

然后我想捕捉用户更改此输入的时刻。这就是为什么在脚本中我也有更改方法

jQuery("input#minCost").change(function () {
        //...
    });

但是此方法不会“听到”我的输入字段的任何更改。仅当我的输入字段在 html 中创建时(而不是在脚本中),它才会听到更改。我应该更改什么才能使 jQuery 看到我的输入字段的更改?

最佳答案

您必须在创建后立即分配事件。请在下面找到工作片段:

function WritePrices(categories) {
    var strResult = "from: <input class=\"price\" type=\"text\" id=\"minCost\" value=\"" + categories.MinPrice + "\" />";
    strResult += "from: <input class=\"price\" type=\"text\" id=\"maxCost\" value=\"" + categories.MaxPrice + "\" />";
    $("#price-range").html(strResult);
    jQuery("input#minCost").change(function () {
        alert("working");
    });
}

var categories = {};
categories.MinPrice = 0.0;
categories.MaxPrice= 10;
WritePrices(categories);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="price-range"></div>

关于javascript - jQuery().change 如何与 ajax 配合使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49300323/

相关文章:

javascript - 用 JavaScript 将字符串转换为数组?

ajax - session 超时后 ASP.NET Core 未重定向到登录页面

javascript - XHR 调用是宏任务还是微任务?

javascript - 使用 knockout.js/jquery 查询数据库

jquery - 如何在全日历中显示从数据库中获取事件的时间

javascript - meta viewport 标签在 window phone IE 浏览器中不起作用

javascript - 为什么我的 webpack 包在主机上成功构建但不在 docker 容器中?

javascript - $document.ready 和 ng-model

Javascript 日期 : change time

javascript - 如果密码匹配则启用按钮