Javascript 中的换行符不起作用 - \n \r <br>
Newline in Javascript doesn´t work - \n \r <br>
我有一个预订表格,它使用函数 (attendees_full_info) 输出输入到电子邮件中的所有数据。现在格式让我很困扰,因为所有标签和输入都在一行中。
我有以下代码:
if(is_array($reg_form) and count($reg_form))
{
foreach($reg_form as $field_id=>$value)
{
// Placeholder Keys
if(!is_numeric($field_id)) continue;
$type = $reg_fields[$field_id]['type'];
$label = isset($reg_fields[$field_id]) ? $reg_fields[$field_id]['label'] : '';
if(trim($label) == '') continue;
if($type == 'agreement')
{
$label = sprintf(__($label, 'mec'), '<a href="'.get_the_permalink($reg_fields[$field_id]['page']).'">'.get_the_title($reg_fields[$field_id]['page']).'</a>');
$attendees_full_info .= $label.': '.($value == '1' ? __('Yes', 'mec') : __('No', 'mec'))."\r\n";
}
else
{
$attendees_full_info .= __($label, 'mec').': '.(is_string($value) ? $value : (is_array($value) ? implode(', ', $value) : '---'))."\r\n";
}
}
}
结果如下:
这是我已经尝试过的方法。在“:”之后,我插入了 \r\n 或仅插入了 \n。但这不起作用。
示例:
if($type == 'agreement')
{
$label = sprintf(__($label, 'mec'), '<a href="'.get_the_permalink($reg_fields[$field_id]['page']).'">'.get_the_title($reg_fields[$field_id]['page']).'</a>');
$attendees_full_info .= $label.': \r\n'.($value == '1' ? __('Yes', 'mec') : __('No', 'mec'))."\r\n";
}
else
{
$attendees_full_info .= __($label, 'mec').': \r\n'.(is_string($value) ? $value : (is_array($value) ? implode(', ', $value) : '---'))."\r\n";
}
有人知道我如何相应地调整代码吗?
从您代码的其他部分(例如,您创建 <a href
文本等的地方)来看,您的电子邮件似乎是 HTML 格式的电子邮件。
假设这是正确的,那么预计换行符(\n
或 \r\n
)将不起作用 - HTML 不会将它们识别为格式化字符。实际上,您很可能会将它们视为最终输出的一部分。
在 HTML 中,您可以使用 <br/>
标签指定换行符。 运行 观看此演示:
Line 1<br/>Line2
我有一个预订表格,它使用函数 (attendees_full_info) 输出输入到电子邮件中的所有数据。现在格式让我很困扰,因为所有标签和输入都在一行中。
我有以下代码:
if(is_array($reg_form) and count($reg_form))
{
foreach($reg_form as $field_id=>$value)
{
// Placeholder Keys
if(!is_numeric($field_id)) continue;
$type = $reg_fields[$field_id]['type'];
$label = isset($reg_fields[$field_id]) ? $reg_fields[$field_id]['label'] : '';
if(trim($label) == '') continue;
if($type == 'agreement')
{
$label = sprintf(__($label, 'mec'), '<a href="'.get_the_permalink($reg_fields[$field_id]['page']).'">'.get_the_title($reg_fields[$field_id]['page']).'</a>');
$attendees_full_info .= $label.': '.($value == '1' ? __('Yes', 'mec') : __('No', 'mec'))."\r\n";
}
else
{
$attendees_full_info .= __($label, 'mec').': '.(is_string($value) ? $value : (is_array($value) ? implode(', ', $value) : '---'))."\r\n";
}
}
}
结果如下:
这是我已经尝试过的方法。在“:”之后,我插入了 \r\n 或仅插入了 \n。但这不起作用。
示例:
if($type == 'agreement')
{
$label = sprintf(__($label, 'mec'), '<a href="'.get_the_permalink($reg_fields[$field_id]['page']).'">'.get_the_title($reg_fields[$field_id]['page']).'</a>');
$attendees_full_info .= $label.': \r\n'.($value == '1' ? __('Yes', 'mec') : __('No', 'mec'))."\r\n";
}
else
{
$attendees_full_info .= __($label, 'mec').': \r\n'.(is_string($value) ? $value : (is_array($value) ? implode(', ', $value) : '---'))."\r\n";
}
有人知道我如何相应地调整代码吗?
从您代码的其他部分(例如,您创建 <a href
文本等的地方)来看,您的电子邮件似乎是 HTML 格式的电子邮件。
假设这是正确的,那么预计换行符(\n
或 \r\n
)将不起作用 - HTML 不会将它们识别为格式化字符。实际上,您很可能会将它们视为最终输出的一部分。
在 HTML 中,您可以使用 <br/>
标签指定换行符。 运行 观看此演示:
Line 1<br/>Line2