向表单输入字段添加默认值
Posted
技术标签:
【中文标题】向表单输入字段添加默认值【英文标题】:Add a default value to a form input field 【发布时间】:2016-01-30 14:41:35 【问题描述】:我有一张在线贷款申请表。在贷款期限字段中,我需要确保用户在输入月数时输入“月”或“月”。例如。 36 个月。
我为此创建了一个正则表达式(.[Mm]onths?
- 我第一次尝试创建一个正则表达式),但我觉得用户必须返回该字段并输入单词“months”可能会很烦人”。
是否可以将“月”一词预先插入字段或在编辑字段/表单提交后插入?我已经有占位符文本(“前所:36个月”),但选择输入字段时会消失。我需要将文本“months”作为正在输入的实际文本的一部分。
我在网上进行了快速搜索,我知道某处有答案,但我似乎找不到要使用的正确搜索词,因为我还没有找到解决方案。
对这个问题有什么建议吗?如果我不能以任何方式将文本“months”包含在输入中,我将不得不使用正则表达式。
【问题讨论】:
在服务器端验证时这样做吗? 我不会在输入中有几个月,而是在标签/输入之后。然后你只需要在字段上进行整数验证。如果您需要添加文字“月”,请在验证整数后添加。 @hjpotter92 - 尽我所能。服务器端或客户端。 @John - 用户输入整数后如何添加单词? 【参考方案1】:如果您愿意在服务器端验证中执行此操作,请使用如下形式:
<input type="number" name="months" /> months
之后,在服务器代码中;你会做(假设 php):
$mon = $_REQUEST['months'] . " months";
【讨论】:
这行得通,但是如果用户输入“36 个月”,我最终会得到“36 个月”...我认为使用正则表达式会更好。 用户不能为input type="number"
元素输入36 Months
。
是的,这是真的。但是我使用的 wordpress 插件不使用 type="number",只使用 type="text"。我发现这有点令人沮丧,因为我不能有一个数字字段。非常感谢您的意见和帮助,谢谢。
FSCF - 快速安全联系表
@Kbam7 常见问题解答表明这是可能的:fastsecurecontactform.com/how-to-add-extra-fields【参考方案2】:
为防止36 Months months
如果用户找到不正确的输入方式或使用不支持type="number"
的旧版浏览器,您应该考虑扩展您的PHP。通过类型转换说只得到第一个整数并在它前面加上“月”
$months = (int) $_REQUEST["months"] . " months";
//Input '36 Months'. Output '36 months'
//Input 'Months36'. Output '0 months'
或者通过删除每个不构成数字的字符并在其前面加上“月”
$months = preg_replace('/[^0-9.]/', '', $_REQUEST["months"]) . " months";
//Input '36 Months'. Output '36 months'
//Input 'Months36'. Output '36 months'
//Input 'Man3Bad6'. Output '36 months'
//Input 'Gone3g6F.ullstop5'. Output '36.5 months'
【讨论】:
以上是关于向表单输入字段添加默认值的主要内容,如果未能解决你的问题,请参考以下文章