我有两个通常被禁用的文本框。当用户按下编辑按钮时,文本框将变为启用状态,并允许他们键入。但是,当我提交表单时,用户输入的值不会传递给我的php代码。
这是我的javascript代码:
if (timesin%2 == 0){
document.getElementById(score1).disabled = true;
document.getElementById(score2).disabled = true;
} else {
document.getElementById(score1).disabled = false;
document.getElementById(score2).disabled = false;
document.getElementById(score1).value = "";
document.getElementById(score2).value = "";
}
timesin++;
在每次替换点击时,它会禁用或启用,可能不是最好的方法,但这不是重要的部分。
这是方框的HTML代码
<input type = 'textbox' id = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' name = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' maxlength = '2' disabled style = 'width:15px; text-align:center' value = '".$col_value."' />
所以它被禁用了。单击按钮时,将调用该函数并启用文本框。然后,用户键入一个值并再次单击编辑按钮以禁用文本框。所以现在我禁用了一个新输入值的文本框。但是,当我通过php提交并获取值时,我得到一个空白变量。
有什么想法吗?
谢谢,
答案 0 :(得分:2)
<input type = 'textbox' id = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' name = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' maxlength = '2' disabled style = 'width:15px; text-align:center' value = '".$col_value."' />
我看到了几个问题。一个是。$ columncount。$ inc。$ leaguesarray [$ numofleagues]。不是HTML。你需要它周围的php标签,还需要回显这些值,如下所示:
'columntext<?php echo $columncount.$inc.$leaguesarray[$numofleagues] ?>'
这一行同样如此:
value = '".$col_value."'
应该是
value = '<?php echo $col_value ?>'
我对页面呈现感到惊讶,除非你一直在php回声中做好准备吗?无论哪种方式,澄清这一点可能有助于缩小可能的问题。
答案 1 :(得分:0)
我不够清楚,但是......任何禁用的输入都不会被发送,如果你想要不可编辑尝试使用readonly ='readonly',顺便说一下你应该在你的中进行某种验证php代码,不要只信任JS
祝你好运答案 2 :(得分:0)
这是使用内联PHP的错误方法:
<input type = 'textbox' id = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' name = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' maxlength = '2' disabled style = 'width:15px; text-align:center' value = '".$col_value."' />
而是尝试这样的事情:
<?php
$id = "columntext".$columncount.$inc.$leaguesarray[$numofleagues];
?>
<input type="textbox" id="<?php echo($id); ?>" name="<?php echo($id); ?>" maxlength="2" value="<?php echo($col_value); ?>">
此外,您应该考虑使用单独的CSS文件来保存样式,而不是将其放在HTML元素中。它使生活变得如此简单,并有助于保持您的设计干燥。
答案 3 :(得分:0)
假设这是在PHP echo语句中,请更改
<input type = 'textbox' id = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' name = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' maxlength = '2' disabled style = 'width:15px; text-align:center' value = '".$col_value."' />
到
<textarea id = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' name = 'columntext".$columncount.$inc.$leaguesarray[$numofleagues]."' maxlength = '2' disabled style = 'width:15px; text-align:center' />".$col_value."</textarea>
ive never seen <input type = 'textbox'> before