我想在用户需要时向表单添加其他输入。 但我正在使用范围滑块(jQrangeslider),我想在显示其他输入时调用它。
我认为调用jQrangeslider与否不是导致问题的原因..但我会给出完整的代码 HTML的用途是:
临时工: 怨妇
<input type="text" name="jour1" />
</div>
<div class="span3"> <span class="top">Matin</span>
<div id="temp-g-1-"></div>
</div>
<div class="span3"> <span class="top">Soir</span>
<div id="temp-d-1-"></div>
</div>
和JS:
$(document).ready(function () {
var jour = 1;
$('input[name^="jour"]').on("blur", function () {
alert('called');
jour = jour++;
$(this).closest('div[id^="jour"]').after('<br><div class="span3"></div><div id="jour' + jour + '"><div class="span3"><span class="top">Jour</span><input type="text" name="jour' + jour + '"/></div><div class="span3"><span class="top">Matin</span><div id="temp-g-' + jour + '-"></div></div><div class="span3"><span class="top">Soir</span><div id="temp-d-' + ++jour + '-"></div></div>');
$('div[id^="temp-g-"]').editRangeSlider({
valueLabels: "change",
durationIn: 1000,
durationOut: 1000,
type: "number",
bounds: {
min: 8,
max: 12
},
defaultValues: {
min: 8,
max: 12
}
});
$('div[id^="temp-d-"]').editRangeSlider({
valueLabels: "change",
durationIn: 1000,
durationOut: 1000,
type: "number",
bounds: {
min: 14,
max: 18
},
defaultValues: {
min: 14,
max: 18
}
});
});
});
jsfiddle示例(没有jQrangeslider):http://jsfiddle.net/p4LWf/5/
答案 0 :(得分:1)
您添加的元素未绑定到click事件,因为它们在绑定时不存在。您应该使用event delegation
代替:
$('.row-form').on("blur",'input[name^="jour"]', function () {
//code
}
有关on
和event delegation
http://api.jquery.com/on/