10 html post newline carriage-return hidden-field
我需要通过隐藏字段发布多行数据.数据将在发布后在文本区域中查看.如何以html格式发布换行/回车?
我试过\ r \n但是只发布实际的"\ r \n"数据
<input type="hidden" name="multiline_data" value="line one\r\nline two" />
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?
小智 11
而不是使用
<input type="hidden">
尝试使用
<textarea style="visibility:hidden;position:absolute;">
虽然在<input>的隐藏状态下技术上允许使用新行(回车和换行),但应该对它们进行转义以与旧版浏览器兼容.您可以通过将所有回车符(\u000D
或\r
)和所有换行符(\u000A
或\n
)替换为应用程序识别的专有字符串作为回车符或新行(并且如果存在于原始字符串中也进行转义)来执行此操作.
简单的字符实体在这里不起作用,因为不符合标准的浏览器可能知道
并且
是新行并从值中剥离它们.
例如,在PHP中,如果您echo
将传递的值传递给textarea,则应包括换行符(和未转义的字符串).
<textarea>带有\ included的一些文本
和带有\ r \n作为提交值的新行</ textarea>
但是,在PHP中,如果您使用<input>标记echo
的value属性的值,则可以使用专有字符串(例如\r
和\n
)转义新行,并在提交的值中转义专有字符串的任何实例.
<input type ="hidden"value ="包含\\包含\ r \n的一些文本以及作为提交值的新行\\ r \\n">
然后,在其他地方使用该值(插入数据库,发送电子邮件等)之前,请务必在必要时取消提交的值.
作为进一步的保证,我问WHATWG,目前HTML规范的编辑Ian Hickson回答说:
bfrohs关于<input type = hidden>的问题 - 值中是否允许换行和回车?它们在Text状态和Search状态中被明确禁止,但没有提到隐藏状态.如果没有,是否有可接受的HTML解决方案来存储来自textarea的表单数据?
Hixie是的,他们被允许// iirc //由于遗留原因你可能希望逃避它们虽然有些浏览器将它们标准化//我忘了如果我们在规范中修复了//
归档时间: |
|
查看次数: |
18963 次 |
最近记录: |