我有一个文本框和一个提交按钮。填写文本框后,当我们点击提交按钮时,应该屏蔽该文本框(我们不应该在文本框中更改任何内容),而不是禁用。
<html>
<head>
<script src="http://code.jquery.com/jquery-1.4.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$('button').click(function(){
var n = $('#name');
if (n.attr('readonly')=='readonly') {
n.removeAttr('readonly');
} else {
n.attr('readonly','readonly');
}
});
});
</script>
</head>
<body>
<input type="text" id="name" />
<button> Lock </button>
</body>
我通过“readonly”属性执行此操作,但我们可以通过“mask”属性来执行此操作。
答案 0 :(得分:1)
您可以从http://plugins.jquery.com/maskedinput/安装jquery插件并尝试这样 -
1)http://digitalbush.com/projects/masked-input-plugin/
2)http://igorescobar.github.io/jQuery-Mask-Plugin/
例如
jQuery(function($){
$("#date").mask("99/99/9999");
$("#phone").mask("(999) 999-9999");
$("#tin").mask("99-9999999");
$("#ssn").mask("999-99-9999");
});
答案 1 :(得分:0)
您可以使用其他输入标记,请参阅this链接 HTML:
<input id="name" />
<input id="hiddenName" style="display: none;" disabled="disabled" />
<button type="button" onclick="disableInput();">Disable</button>
Javascript:
function disableInput() {
var name = document.getElementById("name");
var hiddenName = document.getElementById("hiddenName");
hiddenName.value = name.value;
hiddenName.style.display = "inline";
name.style.display = "none";
}