无法将空格作为输入文本的默认值读取

3

我遇到了在输入文本框中输入默认值的问题。 例如,如果默认值是“Hello World”,那么输入框只会显示“Hello”。 它只接受第一个单词。有什么办法可以让它接受整个字符串吗?

<input type='text' name='prod_name' size='30' value=<?=$prname?> />

使用 <?php echo $prname ?>,你的服务器可能不支持短标签。 - Baba
在我发布这篇文章之前,短标签功能已经被启用了。 - oLraX
1
@oLraX 当你得到正确的答案时,请尽快接受答案。 - Yogesh Suthar
4个回答

7

您需要在value属性周围添加引号。

<input type='text' name='prod_name' size='30' value='<?=$prname?>' />

注意,$prname 值为 "Hello World" 会产生以下结果:

<input type='text' name='prod_name' size='30' value=Hello World> />

在这种情况下,HTML认为您的输入值是“Hello”,而“World”是一些不存在的布尔属性。

2

在像这样的值中使用 ' 或者 "

<input type='text' name='prod_name' size='30' value='<?=$prname?>' />

1

Baba刚刚说了什么,我不知道这是否会影响它,但你忘记将php放在引号内。

value="<?php // code here ?>"

0

尽管这是一个旧帖子并且已经有了答案,但我想添加一个不同的案例供参考:

在我的情况下,我的默认值来自查询。 我需要在类型为“文本”的输入值中设置一个描述(带空格的文本) 我遇到了同样的问题,并像这样解决它:

<input type="text" name="Description" value="'. $row["Description"].'">

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接