我需要添加一个隐藏的表单元素(作为大表单的一部分),需要动态创建和添加。我到目前为止的一个片段是:
IndexError('list index out of range',)
这可以按预期工作。我还想做的是在将隐藏输入添加到表单之前有条件地禁用隐藏输入。我尝试过的是以下变体:
var value = '*****';
var inputHidden = $('<input>').attr('type', 'hidden')).addClass("warningOnly").val(value);
// conditionally disable new element here
$(elem).append(inputHidden);
这不会禁用该元素,我需要一种方法来执行此操作。
答案 0 :(得分:3)
工作正常,或fiddle:
$(function(){
var value = '*****';
var elem = $(".foo");
var inputHidden = $('<input>')
.attr('type', 'hidden')
.addClass("warningOnly")
.val(value);
// conditionally disable new element here
elem.append(inputHidden);
inputHidden.prop("disabled", true);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form class="foo">
Your hidden el will go here. Check the console to see that its disabled.
</form>
答案 1 :(得分:1)
您是否通过attr禁用输入,而不是通过道具来尝试?像这样:
$('#test1').attr('disabled', true);