【发布时间】:2013-12-20 03:48:26
【问题描述】:
长期潜伏在这里问我的第一个公开问题,因为我真的被困住了。
我正在使用托管购物车平台,因此我只能在某些指定的 div 中添加代码。我有一个要从外部调用的 javascript 代码(因为内联不好,除非你必须这样做,对吧?)
所以我的问题是,有一个<select> 下拉列表,我无法直接访问更改 HTML 并且愚蠢的购物车平台没有给它一个 id,只设置了 name 属性。
单击<select name="ShippingSpeedChoice"> 下拉菜单时,我需要清除<div id="result_div">,所以我有:
$("[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事件。 -
您应该努力将问题中的代码减少到最低限度。另外,您省略了 HTML 部分。
-
你能否检查一下在第一次和第二次点击之间是否重新创建了选择元素......如果是这样,请查看事件委托
-
我不确定这是否是购物车的正确规范,如果选择没有任何变化,更新屏幕没有多大意义。尽管他确实使用了“每次单击时都更改”的措辞,但我确实相信他可能有其他意思。
-
另外 - 我想你的意思是 [5] 这里? ;)
FXONtransitdays[4] = "Friday"; FXONtransitdays[4] = "Saturday";
标签: javascript jquery html name-attribute