Javascript 只触发一次

标签 javascript jquery html name-attribute

长期潜伏在这里问我的第一个公开问题,因为我真的被困住了。

我在托管购物车平台上工作,所以我只能在某些指定的 div 中添加代码。我有一个我在外部调用的 javascript 代码(因为内联很糟糕,除非你必须这样做,对吧?)

所以我的问题是,有一个 <select>我没有直接访问更改 HTML 的下拉列表,愚蠢的购物车平台没有给它一个 id,只设置了 name 属性。

我需要清除 <div id="result_div"><select name="ShippingSpeedChoice">单击下拉菜单,所以我有:

$("[name=ShippingSpeedChoice]").change(function(e) { $("#result_div").empty(); });

它触发一次,仅此而已。我的问题是,如何让它每次都触发 <select name="ShippingSpeedChoice">被点击了吗?

这是所有相关的 javascript(以防它阻止 #result_div 在某处清除):

    $("[name=ShippingSpeedChoice]").change(function(e) {
        $("#result_div").empty();
    });

    $("#btn_calc").click(function(e) {      /// onclick on Calculate Delivery Date button

提前致谢,如有任何帮助,我们将不胜感激!

最佳答案

如果您希望每次单击元素时都发生一些事情,请使用 .click() 而不是 .change()。后者仅在他们从菜单中选择与之前不同的值时才会触发。

$("[name=ShippingSpeedChoice]").click(function(e) { $("#result_div").empty(); });

关于Javascript 只触发一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20695954/

相关文章:

html - 为什么在空 anchor 标记 href 中使用 # 约定?

javascript - 禁用 ASP.NET MVC 中某些字段的客户端验证

javascript - 测试库错误 : mockConstructor(. ..):渲染没有返回任何内容

javascript - 按对象键查询 Firestore

javascript - jquery 单击事件在单击之前触发

jquery - 如何让textarea中的文字保持在顶部?

Javascript 函数返回数字类型。但是当省略 typeof 时返回 NaN

jquery - 如何获取下一个非子元素

javascript - 母版页中所选菜单项的外观

html - 从 &lt;input type ="date"/> 中删除键盘以外的所有样式和功能