Javascript jquery增量仅在chrome中有效 $(“.incrementer”)。单击(函数(){ var值=$(“#layernumber”).val(); var item=$(“输入[type=file]:last”).clone(true); var txt=$(“.layer\u selector:last”).after(“”).clone(true); if($(“#layernumber”).val()2){ $(“.incrementer”).hide(); } });
以上代码增加图层的值 随着层的增加,文件上载选项也将随之增加 但这只适用于Chrome。不在FireFox或Internet Explorer中 HTML代码是:Javascript jquery增量仅在chrome中有效 $(“.incrementer”)。单击(函数(){ var值=$(“#layernumber”).val(); var item=$(“输入[type=file]:last”).clone(true); var txt=$(“.layer\u selector:last”).after(“”).clone(true); if($(“#layernumber”).val()2){ $(“.incrementer”).hide(); } });,javascript,jquery,google-chrome,Javascript,Jquery,Google Chrome,以上代码增加图层的值 随着层的增加,文件上载选项也将随之增加 但这只适用于Chrome。不在FireFox或Internet Explorer中 HTML代码是: $(".incrementer").click(function(){ var values = $("#layernumber").val(); var item = $("input[type=file]:last").clone(true); var txt = $(".layer_selector:l
$(".incrementer").click(function(){
var values = $("#layernumber").val();
var item = $("input[type=file]:last").clone(true);
var txt = $(".layer_selector:last").after('<br>').clone(true);
if($("#layernumber").val() < 4){
$("#attach").append(item);
$("#attach").append(txt);
}
if($("#layernumber").val() > 2){
$(".incrementer").hide();
}
});
提供您的图层详细信息
层数
*
提供您的层数
选择图层
*
请选择
弗斯特
第二
中间的
最终的
我为此做了一把小提琴
<div class="tab-pane active" id="tab2">
<h3 class="block">Provide your layer details</h3>
<div class="form-group">
<label class="control-label col-md-3">Number of layer
<span class="required" aria-required="true"> * </span>
</label>
<div class="col-md-4">
<div class="input-group bootstrap-touchspin">
<span class="input-group-addon bootstrap-touchspin-prefix" style="display: none;"></span>
<input id="layernumber" type="text" class="form-control" name="layernumber" style="display: block;">
<span class="input-group-addon bootstrap-touchspin-postfix" style="display: none;"></span>
<span class="input-group-btn-vertical">
<button class="btn btn-default bootstrap-touchspin-up" type="button">
<i class="glyphicon glyphicon-plus incrementer"></i>
</button>
<button class="btn btn-default bootstrap-touchspin-down" type="button">
<i class="glyphicon glyphicon-minus decrementer"></i>
</button>
</span>
</div>
<span class="help-block"> Provide your number of layers </span>
</div>
</div>
<!-- fileupload starts-->
<!-- -->
<div class="form-group">
<label class="control-label col-md-3">Choose Layer
<span class="required" aria-required="true"> * </span>
</label>
<div class="col-md-9">
<div id="attach">
<div id="previewImg"></div>
<div class="col-md-9">
<input type="file" name="layerimages[]" onchange="preview(this);" class="myfile" id="fileid" multiple="">
<select id="layerid" class="layer_selector" name="layer_selector">
<option value="">Please Select</option>
<option value="0">First</option>
<option value="1">Second</option>
<option value="2">Intermediate</option>
<option value="3">Final</option>
</select>
</div>
</div>
<br>
</div>
</div>
<!-- fileupload ends-->
</div>
我对代码所做的更改基本上是将layernumber输入的值初始化为0,并在每次单击时递增
https://jsfiddle.net/w1gy8ruj/1/
$(文档).ready(函数(){
$(“.incrementer”)。单击(函数(){
var值=$(“#layernumber”).val();
var item=$(“输入[type=file]:last”).clone(true);
var txt=$(“.layer\u selector:last”).after(“
”).clone(true);
if($(“#layernumber”).val()<4){
$(“#附件”)。附加(项目);
$(“#附件”).append(txt);
}
if($(“#layernumber”).val()>2){
$(“.incrementer按钮”).hide();
}
价值++;
$(“#layernumber”).val(值);
});
});
您不使用
$(document).ready(function() {
$(".incrementer").click(function() {
var values = $("#layernumber").val();
var item = $("input[type=file]:last").clone(true);
var txt = $(".layer_selector:last").after('<br>').clone(true);
if ($("#layernumber").val() < 4) {
$("#attach").append(item);
$("#attach").append(txt);
}
if ($("#layernumber").val() > 2) {
$(".incrementer-button").hide();
}
values++;
$("#layernumber").val(values);
});
});
因此,除非您不想在下面的if语句中使用它并用于递增,否则这是不需要的
并且不增加layernumber,所以
var values = $("#layernumber").val();
永远不会执行。您应该增加它,并将其设置为
if($("#layernumber").val() > 2) {
如果你花一点额外的时间来确保你在这里发布的代码易于阅读,它确实会帮助人们。请在调用
Incrementer({…})
的地方添加代码,以便将输入初始化为Incrementer。您好,我注意到这一定是因为I标记上有click处理程序,并且它可能不会像预期的那样每次都被单击,我已将其更改为单击button元素instead@RahulRavindran答案适合您的用例。还有一件事:应该用1而不是0初始化layernumber,因为html已经提供了第一个layer元素。
$("#layernumber").val(values)