jQuery`prop`方法未按预期运行

jQuery`prop`方法未按预期运行,jquery,Jquery,我对jQueryprop方法有异议。 如果我动态设置值,然后禁用输入,则该值是隐藏的。下面是我的代码: $("#firstName").val("First Name"); $("input").prop("disabled",true); 现在单击“编辑”按钮并禁用删除 $("input").prop("disabled",false); 此时,我的值再次可见。 有人能帮助我理解这一点,并使该值即使在禁用模式下也可见吗? 谢谢这是我为你做的工作。问题在于jQuery脚本的加载 <in

我对jQuery
prop
方法有异议。 如果我动态设置值,然后禁用输入,则该值是隐藏的。下面是我的代码:

$("#firstName").val("First Name");
$("input").prop("disabled",true);
现在单击“编辑”按钮并禁用删除

$("input").prop("disabled",false);
此时,我的值再次可见。 有人能帮助我理解这一点,并使该值即使在禁用模式下也可见吗? 谢谢

这是我为你做的工作。问题在于jQuery脚本的加载

<input type="text" value="firstName" disabled="true" />
<button id="chProp">
    Change Prop
</button>

$("#chProp").on('click', function(){
   $("input").prop("disabled",false);
});

换道具
$(“#chProp”)。在('click',function()上{
$(“输入”).prop(“禁用”,false);
});
希望它能解决您的问题。

对于jQuery 1.6+

要更改禁用的属性,应使用.prop()函数

$(“输入”).prop('disabled',true); $(“输入”).prop('disabled',false)

对于jQuery 1.5及以下版本

.prop()函数不存在,但.attr()具有类似的功能:

设置禁用属性

$(“输入”).attr('disabled','disabled'); 要再次启用,正确的方法是使用.removeAttr()

$(“输入”).removeAttr('disabled')


有关更多详细信息。

已禁用
不会使其不可见,它会阻止用户在表单中输入/提交值,我明白这一点。但是我看不到我在禁用后添加的值。你的问题不清楚。你说看不见是什么意思?请创建一个请提供,无法用此信息回答。这不会在windows上的Chrome中隐藏文本:
$(“#firstName”)。在(“单击”,function(){$(“#firstName”).val(“First Name”);$(“输入”).prop(“禁用”,true);}
-它只会将字段变灰,但文本仍然可见。请单击
按钮并创建一个显示问题的代码段请查看此笔。为什么在CSS列中添加HTML元素?不,不是。如果加载该页面,则该页面将被禁用,并且该值将被隐藏。一旦你们点击按钮,它就会显示出来。我理解它的设计问题,但我需要知道为什么会发生这样的事情。看看我在回答中与你们分享的小提琴吧!如果它工作正常&在您的设计中不工作意味着您的页面加载或设计CSY可能有问题您的值在您的笔中可见!。由于颜色为白色,因此该值不可见。通过使用鼠标选择值手动检查。