我有文本框,它是在drupal曝光过滤器中生成的。我试图在文本框中禁用键入。但仍未禁用文本框。
jQuery(document).ready(function($) {
$('#edit-field-date-value-value-datepicker-popup-0').bind('keypress', function(e) {
e.stopPropagation();
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="edit-field-date-value-value-datepicker-popup-0" name="field_date_value[value][date]" value="" size="20" maxlength="30" class="form-text hasDatepicker date-popup-init">
&#13;
答案 0 :(得分:1)
你是说这个吗?
jQuery(document).ready(function($) {
$('#edit-field-date-value-value-datepicker-popup-0').bind('keypress', function(e) {
e.preventDefault();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="edit-field-date-value-value-datepicker-popup-0" name="field_date_value[value][date]" value="" size="20" maxlength="30" class="form-text hasDatepicker date-popup-init">
使用preventDefault()而不是stopPropagation()。
如果您可以编辑HTML本身,添加属性“disabled”将完全禁用输入。
答案 1 :(得分:0)
只需添加已禁用的
<input disabled type="text" id="edit-field-date-value-value-datepicker-popup-0" name="field_date_value[value][date]" value="" size="20" maxlength="30" class="form-text hasDatepicker date-popup-init">
答案 2 :(得分:0)
只需在输入类型中添加readonly属性=&#34; text&#34;如下图所示:
<input type="text" id="edit-field-date-value-value-datepicker-popup-0"
name="field_date_value[value][date]" value="" size="20" maxlength="30"
class="form-text hasDatepicker date-popup-init" readonly="true">
答案 3 :(得分:0)
<input type="text" id="edit-field-date-value-value-datepicker-popup-0" name="field_date_value[value][date]" value="" size="20" maxlength="30" class="form-text hasDatepicker date-popup-init" disabled>
为什么不能使用禁用属性禁用它。
https://jsfiddle.net/co8dd2nx/
或者如果你想用javascript禁用它,你必须在加载时执行它。像这样:
window.onload = function() {
document.getElementById('1').disabled = true;
};