我正在努力弄清楚如何在某种条件下启用文本框。所以,在下面的例子中,我想要输入框" name"在按钮" enterName"之前被禁用点击。然后当输入框中的某些内容输入" name"我想要" useName"按钮启用(或只是弹出一个警告框,上面写着"输入名称")
<button id="enterName"> Enter a Name </button>
Name: <input type="text" id="name" disabled="disabled"/>
<button id="useName" disabled="disabled"> Use this name </button>
现在,我有这个:
$(document).ready(function(){
$("button:#enterName").click(function(){
/* ??? */
});
});
$(document).ready(function(){
$("button:#useName").click(function(){
$("div.nameUsing").append($('input#name').val());
$('input#name').val(""); //reset input field
});
});
我不知道如何启用文本框&#34; enterName&#34;按钮,或者当&#34; useName&#34;时如何检查输入?按下按钮。任何帮助将不胜感激。
答案 0 :(得分:1)
尝试使用removeAttr
。例如:
$("#enterName").click(function() {
$('#name').removeAttr('disabled');
});
答案 1 :(得分:1)
您想使用.prop()
jQuery API启用或禁用控件。
经过测试和working:
$(document).ready(function () {
$("button#enterName").click(function () {
$('input#name').prop('disabled', false);
});
$('input#name').change(function () {
$("button#useName").prop('disabled', $(this).val().length === 0); //enable if length > 0, disable otherwise
});
$("button#useName").click(function () {
$("div.nameUsing").append($('input#name').val());
$('input#name').val(""); //reset input field
});
});
答案 2 :(得分:1)
试试这个
$("#enterName").click(function() {
$('#name').prop('disabled', false);
})
$('#name').keyup(function(){
$('#useName').prop('disabled', $(this).val().length == 0);
});