我是jQuery的新手。我有一个带有两个输入框的表单。
<form>
<div class="col-md-6">
<div class="form-group ">
<label for="minAmt" class="col-lg-4 control-label">Min.Amount</label>
<div class="col-lg-6">
<input type="text" class="form-control minAmt" id="minAmt" name="minAmt" placeholder="Enter Min Amount" />
</div>
</div>
<div class="form-group ">
<label for="maxAmt" class="col-lg-4 control-label">Max.Amount</label>
<div class="col-lg-6">
<input type="text" class="form-control maxAmt" id="maxAmt" name="maxAmt" placeholder="Enter Max Amount" />
</div>
</div>
</div>
<div class="col-md-12">
<div class="form-actions btnzone">
<button type="button" class="btn btn-success savebtn" style="padding: 6px 12px;margin-left: 40%;" id="addbutton" ><i class="icon-check-sign" aria-hidden="false"></i>Add</button>
</div>
</div>
</form>
<form class="form-horizontal" role="form" id="limits" >
<div class="col-md-12" style="height:150px;overflow:auto;margin-top:5px;">
<table id="table" class="table table-hover table-fixed" width="100%" cellspacing="0" style="border: 1px; height:10px;" >
<thead style="background-color:#CCE5FF">
<tr>
<th>Min.Amount</th>
<th>Max.Amount</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</form>
首先,用户输入最小值和最大值,然后点击&#34;添加&#34;按钮。然后,这些值将以表格格式显示在最小和最大列中。
然后禁用第一个输入框,并获取先前添加的最大值的值。用户现在只需输入新的最大值,然后按&#34;添加&#34;再次。
这样,可以在表格中添加多个连续范围。
以下是代码:
$("button#addbutton").click(function(){
var minAmt=$("#minAmt").val();
var maxAmt=$("#maxAmt").val();
var new_row = "<tr id='row"+i+"' class='info'><td class='minAmt'>" + minAmt + "</td><td class='maxAmt'>" + maxAmt + "</td></tr>";
$("table tbody").append(new_row);
$("#minAmt").val($('td.maxAmt').last().text()).prop("disabled","disabled");
$("#maxAmt").val('');
});
因此,首次点击后,用户只能输入最大金额。
我希望在每次&#34;添加&#34;之后将.01
添加到最小金额单击(手动输入最小值时第一次除外)。
例如:
首先我输入1 - 100。
下次最小金额自动取100时,我输入最大金额1000.
点击&#34;添加&#34;后,我想在表格中显示100.01到1000.
我该怎么做?
答案 0 :(得分:2)
您可以使用值:
+minAmt + 0.01
注意第一个一元加运算符,它将字符串转换为值。
以下是更新后的代码:
$("button#addbutton").click(function(){
var minAmt=$("#minAmt").val();
var maxAmt=$("#maxAmt").val();
// Some validation
if (minAmt == '' || isNaN(minAmt)) {
$("#minAmt").focus();
$("#minError").show();
return;
}
$("#minError").hide();
if (maxAmt == '' || isNaN(maxAmt) || +maxAmt <= +minAmt) {
$("#maxAmt").focus();
$("#maxError").show();
return;
}
$("#maxError").hide();
var i = $("table tbody tr").length + 1;
$("table tbody").append(
$("<tr>").attr("id", "row"+i).addClass("info").append(
$("<td>").addClass("minAmt").text(minAmt),
$("<td>").addClass("maxAmt").text(maxAmt)
)
);
$("#minAmt").val(+maxAmt+0.01).prop("disabled","disabled");
$("#maxAmt").val('');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<div class="col-md-6">
<div class="form-group ">
<label for="minAmt" class="col-lg-4 control-label">Min.Amount</label>
<div class="col-lg-6">
<input type="text" class="form-control minAmt" id="minAmt" name="minAmt" placeholder="Enter Min Amount" />
<span id="minError" style="display: none; color: red">invalid input</span>
</div>
</div>
<div class="form-group ">
<label for="maxAmt" class="col-lg-4 control-label">Max.Amount</label>
<div class="col-lg-6">
<input type="text" class="form-control maxAmt" id="maxAmt" name="maxAmt" placeholder="Enter Max Amount" />
<span id="maxError" style="display: none; color: red">invalid input</span>
</div>
</div>
</div>
<div class="col-md-12">
<div class="form-actions btnzone">
<button type="button" class="btn btn-success savebtn" style="padding: 6px 12px;margin-left: 40%;" id="addbutton" ><i class="icon-check-sign" aria-hidden="false"></i>Add</button>
</div>
</div>
</form>
<form class="form-horizontal" role="form" id="limits" >
<div class="col-md-12" style="height:150px;overflow:auto;margin-top:5px;">
<table id="table" class="table table-hover table-fixed" width="100%" cellspacing="0" style="border: 1px; height:10px;" >
<thead style="background-color:#CCE5FF">
<tr>
<th>Min.Amount</th>
<th>Max.Amount</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</form>
&#13;