使用 jquery 掩码添加输入
Add input with jquery mask
大家好,我有下面这个脚本,它正在添加输入,但我无法插入遮罩。
我正在使用的插件
https://github.com/igorescobar/jQuery-Mask-Plugin
第一个字段掩码是运行,添加的时候不加掩码。
有帮助吗?
<script type="text/javascript">
$(document).ready(function() {
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
$(add_button).click(function(e){ //on add input button click
e.preventDefault();
$(wrapper).append("<div><input type=\"text\" name=\"mytext[]\" id=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
});
$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
e.preventDefault(); $(this).parent('div').remove();
})
});
</script>
<div class="input_fields_wrap">
<button class="add_field_button">Add More Fields</button>
<div><input type="text" name="mytext[]" id="date"></div>
</div>
<script type="text/javascript">
$('#date').mask('00/00/0000');
</script>
在$(document).ready(function() {})
里面添加$('#date').mask('00/00/0000');
因为当您在这样的脚本块中 运行 时,无法保证文档已完成加载。
多可:https://igorescobar.github.io/jQuery-Mask-Plugin/docs.html
稍微清理了一下。
var wrapper = $(".input_fields_wrap");
var button = $(".add_field_button");
var input = $("#date");
button.click(function (e) {
e.preventDefault();
wrapper.append("<div><input type=\"text\" name=\"mytext[]\" id=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
});
wrapper.on("click", ".remove_field", function (e) {
e.preventDefault();
$(this).parent('div').remove();
})
input.mask('00/00/0000');
首先更改 id 选择器 #date
class .date
因为不能有多个具有相同 id 的元素。
第二件事你需要将 $('.date').mask('00/00/0000');
移动到 $(document).ready(function() {})
方法中。
第三件事,您必须将掩码绑定到新创建的输入元素。
以下是修改上述建议更改后的工作代码副本。
<script type="text/javascript">
$(document).ready(function () {
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
$(add_button).click(function (e) { //on add input button click
e.preventDefault();
$(wrapper).append("<div><input type=\"text\" name=\"mytext[]\" class=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
$('.date').mask('00/00/0000');
});
$(wrapper).on("click", ".remove_field", function (e) { //user click on remove text
e.preventDefault();
$(this).parent('div').remove();
})
$('.date').mask('00/00/0000');
});
</script>
<div class="input_fields_wrap">
<button class="add_field_button">Add More Fields</button>
<div><input type="text" name="mytext[]" class="date"></div>
</div>
<script type="text/javascript">
$('#date').mask('00/00/0000');
</script>
大家好,我有下面这个脚本,它正在添加输入,但我无法插入遮罩。 我正在使用的插件 https://github.com/igorescobar/jQuery-Mask-Plugin
第一个字段掩码是运行,添加的时候不加掩码。
有帮助吗?
<script type="text/javascript">
$(document).ready(function() {
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
$(add_button).click(function(e){ //on add input button click
e.preventDefault();
$(wrapper).append("<div><input type=\"text\" name=\"mytext[]\" id=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
});
$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
e.preventDefault(); $(this).parent('div').remove();
})
});
</script>
<div class="input_fields_wrap">
<button class="add_field_button">Add More Fields</button>
<div><input type="text" name="mytext[]" id="date"></div>
</div>
<script type="text/javascript">
$('#date').mask('00/00/0000');
</script>
在$(document).ready(function() {})
里面添加$('#date').mask('00/00/0000');
因为当您在这样的脚本块中 运行 时,无法保证文档已完成加载。
多可:https://igorescobar.github.io/jQuery-Mask-Plugin/docs.html
稍微清理了一下。
var wrapper = $(".input_fields_wrap");
var button = $(".add_field_button");
var input = $("#date");
button.click(function (e) {
e.preventDefault();
wrapper.append("<div><input type=\"text\" name=\"mytext[]\" id=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
});
wrapper.on("click", ".remove_field", function (e) {
e.preventDefault();
$(this).parent('div').remove();
})
input.mask('00/00/0000');
首先更改 id 选择器 #date
class .date
因为不能有多个具有相同 id 的元素。
第二件事你需要将 $('.date').mask('00/00/0000');
移动到 $(document).ready(function() {})
方法中。
第三件事,您必须将掩码绑定到新创建的输入元素。 以下是修改上述建议更改后的工作代码副本。
<script type="text/javascript">
$(document).ready(function () {
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
$(add_button).click(function (e) { //on add input button click
e.preventDefault();
$(wrapper).append("<div><input type=\"text\" name=\"mytext[]\" class=\"date\"/><a href=\"#\" class=\"remove_field\">Remove</a></div>");
$('.date').mask('00/00/0000');
});
$(wrapper).on("click", ".remove_field", function (e) { //user click on remove text
e.preventDefault();
$(this).parent('div').remove();
})
$('.date').mask('00/00/0000');
});
</script>
<div class="input_fields_wrap">
<button class="add_field_button">Add More Fields</button>
<div><input type="text" name="mytext[]" class="date"></div>
</div>
<script type="text/javascript">
$('#date').mask('00/00/0000');
</script>