【发布时间】:2016-09-21 12:37:42
【问题描述】:
我有一个输入 HTML 页面,其中包含文本字段和一个用于禁用该输入字段的复选框。
这是用于禁用 .js 文件中的文本字段的 JavaScript 代码。value 正在传递复选框的字段名称。
function disable_input_field(value){
if ($("#undefined_" + value).is(":checked")) {
document.getElementById("undefined_" + value).disabled = true;
document.getElementById(value).value = '??';
}else{
$("#" + value ).prop("disabled", false);
document.getElementById(value).value = '';
}
}
在输入的 HTML 页面中,这是 html 代码和 js 代码。
<tr>
<td >data</td>
<td colspan="3">
<input type="text" id="data_value" name="data_vale" size="50"value='<?php echo $data?>'>
</td>
<td colspan = "3">
<?php
if($check_data != ''){?>
<input type="checkbox" checked name="undefined_data" id="undefined_data" onclick="disable_input_field('data')" >disable
<?php }else{?>
<input type="checkbox" name="undefined_data" id="undefined_data" onclick="disable_input_field('data')" >disable
<?php }?>
<input type="hidden" name="data" id="data">
</td>
</tr>
<tr>
.................................................. ....................................
$(document).ready(function() {
if(document.getElementById('check_data').value == 'data'){
disable_input_field('data');
}
}
在控制器中,
if ($this->input->post('data') == 'disabled') {
$data['check_data'] = 'data';
}
但禁用文本字段不起作用。请帮我解决这个问题。
【问题讨论】:
-
ID 不能重复。
id="data"已在文本中使用过两次,在隐藏字段中使用过一次。 -
无法重现此问题..fiddle
-
文本框需要使用 readonly = true 复选框。
-
是的,这是一个错误。我纠正了它。但不工作@Sasikumar
标签: javascript html