Hello! 欢迎来到小浪资源网!


如何在HTML中正确地动态控制文本输入框的readOnly属性?


如何在HTML中正确地动态控制文本输入框的readOnly属性?

改变readonly属性的正确方式

html中,readonly属性用于设置文本输入框是否可编辑。通常,开发者希望通过php代码动态改变readonly的值。但是,如代码所示,这种方法并不起作用:

<input type="text" id="name" name="name" value="<?php echo isset($_get['username']) ? $_get['username'] : ''; ?>" placeholder="请输入您的姓名" readonly="<?php print(isset($_get['username'])?true:false); ?>">

问题在于readonly属性不是通过true和false值控制的。只要有readonly属性,不管后面是任何值,文本输入框都是不可编辑的。

正确的做法是使用以下代码:

立即学习前端免费学习笔记(深入)”;

<input type="text" value="<?php echo $_GET['userName'] ?? ''; ?>" <?php print(isset($_GET['userName']) ? 'readonly':''); ?> >

在这种情况下,如果$_get[‘username’]存在,则文本输入框将被设置为readonly;否则,文本输入框将保持可编辑状态。

相关阅读