0

私にとっては、PHPに解析したい非常に複雑な行があります。

echo '<input class="cbox" onclick="if(this.checked){document.getElementById('school').style.display ='inline'}else{document.getElementById('school').style.display ='none'}" type="checkbox" name="type[]" value="School" checked/><br>';

明らかに、スピーチ マークを使用してエコーを囲むと、onlick イベントでバラバラになります。どうすればこれを回避できますか?

4

5 に答える 5

3

PHP で文字をエスケープするには、次のように \ を使用します。

echo '<input class="cbox" onclick="if(this.checked){document.getElementById(\'school\').style.display =\'inline\'}else{document.getElementById(\'school\').style.display =\'none\'}" type="checkbox" name="type[]" value="School" checked/><br>';
于 2013-03-08T19:33:32.583 に答える
0

二重引用符を使用する場合は、他の二重引用符の前に\文字を付けることでエスケープできます。

詳細については、http://php.net/manual/en/language.types.string.phpをご覧ください。

于 2013-03-08T19:37:06.867 に答える
0

\" で引用符をエスケープする必要があります

このような:

echo "<input class=\"cbox\" onclick=\"if(this.checked){document.getElementById('school').style.display ='inline'}else{document.getElementById('school').style.display ='none'}\" type=\"checkbox\" name=\"type[]\" value=\"School\" checked/><br>";
于 2013-03-08T19:34:07.140 に答える
0

の前にスラッシュを追加します'

echo '<input class="cbox" onclick="if(this.checked){document.getElementById(\'school\').style.display =\'inline\'}else{document.getElementById(\'school\').style.display =\'none\'}" type="checkbox" name="type[]" value="School" checked/><br>';
于 2013-03-08T19:35:02.677 に答える
-2

HTML の出力に echo を使用しないでください。
ただし、常にそのまま入力します

?>
<input class="cbox" 
 onclick="if(this.checked){
    document.getElementById('school').style.display='inline'
}else{
     document.getElementById('school').style.display ='none'}" 
type="checkbox" name="type[]" value="School" checked/><br>
于 2013-03-08T19:35:42.080 に答える