我想首先将一个javascript onclick函数代码存储到一个字符串中,然后我需要在一个单选按钮中传递它。
我的刺痛变量是:
$jsFunc = "onclick=\"javascript:showHide(this.value, \'$arrFlipEntities[$field_id]\');\"";
我想像dis:
一样使用这个变量$strCode .= "<input {$jsFunc} type=\"radio\" name=\"{$field_name}\" id=\"{$option}\" value=\"{$option}\" checked=\"checked\"/><label for=\"{$option}\">{$option}</label>";
但是,当我查看源代码时,它正在提供此输出:
<input onclick="javascript:showHide(this.value, \'bas_link\');" type="radio" name="bas_type" id="Yes" value="Yes" checked="checked">
答案 0 :(得分:1)
尝试:
$jsFunc = "onclick=\"javascript:showHide(this.value, '".$arrFlipEntities[$field_id]."');\"";
$strCode .= "<input {$jsFunc} type=\"radio\" name=\"{$field_name}\" id=\"{$option}\" value=\"{$option}\" checked=\"checked\"/><label for=\"{$option}\">{$option}</label>";
答案 1 :(得分:1)
当'是两个'时,它不需要\
$jsFunc = "onclick=\"javascript:showHide(this.value, '$arrFlipEntities[$field_id]')\"";
$strCode .= "<input {$jsFunc} type=\"radio\" name=\"{$field_name}\" id=\"{$option}\" value=\"{$option}\" checked=\"checked\"/><label for=\"{$option}\">{$option}</label>";
答案 2 :(得分:1)
我更喜欢单引号方法:
$jsFunc = 'onClick="javascript:showHide(this.value, '.$arrFlipEntities[$field_id].');"';
$strCode .= '<input '.$jsFunc.' type="radio" name="'.$field_name.'" id="'.$option.'" value="'.$option.'" checked="checked"/><label for="'.$option.'">'.$option.'</label>';
答案 3 :(得分:0)
$jsFunc = "onclick=\"javascript:showHide(this.value, \'$arrFlipEntities[$field_id]\');\"";
应该是:
$jsFunc = "onclick=\"javascript:showHide(this.value, '".$arrFlipEntities[$field_id]."');\"";
单引号和双引号在被另一引号包裹时不会被转义。你也不能在双引号内访问类似的数组,只适用于$ var =“$ myVar”等变量;