javascript函数中的PHP字符串格式化
php string formating in javascript function
请帮我解决这个字符串格式化问题。运行时显示错误。
我需要调用一个java脚本函数AddHotel()与一些php变量从输入标签。在运行函数中的第一个参数时显示错误。它应该像onClick='AddHotel('divid', 'some_id', 'id',ids,rate)'
但在运行时显示为onClick='AddHotel(divid', 'some_id', 'id',ids,rate)'
$resort[] = "<div id='".$iiiddd."'><input id='hotel_day".$child_post->ID.$dyid."' name='hotel_day".$dyid."' type='radio' value='".$child_post->ID."' onclick='AddHotel(".$p.",'".$s."','".$psid."','".$dyid."','".$child_post->ID."',".$child_post->fields['price'].")' />
<input id='".$s."' name='expsel".$dyid."[]' type='hidden' value='' />".$child_post->post_title."<span>Rs:- ".$child_post->fields['price']."</span></div>";
要转义引号
$resort[] = "<div id='".$iiiddd."'><input id='hotel_day".$child_post->ID.$dyid."' name='hotel_day".$dyid."' type='radio' value='".$child_post->ID."' onclick='AddHotel(".$p.",''".$s."'',''".$psid."'',''".$dyid."'',''".$child_post->ID."'',".$child_post->fields['price'].")' />".$child_post->post_title."Rs:- ".$child_post->fields['price']."";
为所有人面临这样的问题:
你应该总是使用双引号表示HTML属性值例如:
<div attribute="value"><div>
为了在Javascript函数中传递变量,必须对string使用引号(最好是单引号)。如:
somethingAwesome('work', 'life', 1);
在PHP中嵌入HTML和Javascript时,一定不要把引号搞混了。
PHP字符串+ HTML元素:
$string = '<div></div>';
PHP字符串+带有属性的HTML元素:
$string = '<div id="awesome"></div>';
PHP字符串+带有属性的HTML元素+ Javascript函数:
$string = '<div id="awesome" onclick="somethingAwesome()"></div>';
PHP字符串+带属性的HTML元素+带参数的Javascript函数:
$string = '<div id="awesome" onclick="somethingAwesome('''.$string.''', '''.$string2.''', '.$integer.');"></div>';
您可以选择双引号或单引号,但遵循一种特定的方式将防止您混淆。
还记得缩进你的代码,即使在HTML字符串
的情况下您的问题解决方案:
$resort[] = '<div id="'.$iiiddd.'">
<input id="hotel_day'.$child_post->ID.$dyid.'" name="hotel_day'.$dyid.'" type="radio" value="'.$child_post->ID.'" onclick="AddHotel('''.$p.''', '''.$s.''', '.$psid.', '''.$dyid.''', '.$child_post->ID.', '''.$child_post->fields['price'].''')" />
<input id="'.$s.'" name="expsel'.$dyid.'[]" type="hidden" value="" />
'.$child_post->post_title.'
<span>Rs:- '.$child_post->fields['price'].'</span>
</div>';
相关文章:
- jQuery中是否内置了任何字符串格式化函数
- 将字符串转换为格式化日期
- 用Javascript重新格式化复杂文本日期字符串的更好方法
- 如何将日期字符串视为格式化数组[EYEAR,MONTH,DAY]
- 如何格式化match()参数以定位电子邮件中的字符串
- 用逗号分割字符串,格式化后显示
- 如何格式化字符串以修复Javascript中的缩进
- momentjs 显示本地时间和自动格式化字符串
- 有没有办法在javascript中格式化字符串
- jQuery(或Javascript)基于给定的C#/VBA/Java格式字符串格式化数字的方法
- Javascript/Regex,用于在键入时格式化字符串
- 在 javascript 中从字符串格式化日期
- 如何使用变量名称实现字符串格式化程序
- JS 字符串格式化操作 - 将变量值替换为字符串
- 获取&从一个简单的字符串格式化HTML标记
- javascript函数中的PHP字符串格式化
- Javascript字符串格式化-替换保存在变量中的字符串
- Python中用于Javascript的可选字符串格式化器
- Javascript字符串格式化
- javascript中的字符串格式化