我想知道如果.从文本框中删除句点符号,是否可以点击事件.例如,我有一个文本框#Quantity,它将数值作为输入与周期符号
我有一个下拉控件#unitValue有三个选项
我已经成功点击期间.按键按下事件,如下所示
$("#Quantity").keypress(function(e) {
if(e.which == 46) {
//successfully disabled Gram in Unit
}
});
Run Code Online (Sandbox Code Playgroud)
现在我想在下拉列表中启用"Gram"选项,如果.从文本框中删除了句点符号.我有一个想法,但如果这样做是不对的.想法是: - 在任何键按下时将每个字母添加到一个数组,然后按退格键,我检查数组索引上的字母是否是周期符号.,如果是 .符号则启用"Gram"
任何帮助将不胜感激
谢谢
JS Fiddle - 更新 -改为使用.prop()
// attach the functionality on multi events
$('#inpt').on('keypress input change', function() {
var Gram = $('#slct').children('[value="1"]');
// if the indexOf "." is > -1, then there's a dot
if ($(this).val().indexOf('.') > -1) {
// disable the Gram option
Gram.prop('disabled', true);
// ====================== this part was added by @SarathChandra
// reset the drop down if Gram option was selected
if ($('#slct').val() === "1" || $('#slct').val() === null) {
$('#slct').val("0");
}
// ====================== @SarathChandra Thank you for the improvement
} else {
// if it the dot was removed, we set the disabled prop to false
Gram.prop('disabled', false);
}
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input id="inpt" type="text">
<select id="slct">
<option value="0">- select -</option>
<option value="1">Gram</option>
<option value="2">Kilo</option>
<option value="3">Quntal</option>
</select>Run Code Online (Sandbox Code Playgroud)
编辑:感谢@SarathChandra添加了以下几行:
if($('#slct').val() == "1" || $('#slct').val() == null){
$('#slct').val("0");
}
Run Code Online (Sandbox Code Playgroud)
要在输入的值不包含a时修复它.,并且选择了Gram,那么添加时间段会重置下拉列表.
| 归档时间: |
|
| 查看次数: |
162 次 |
| 最近记录: |