У меня есть текст типа ввода для редактирования текста
<input type='text' id='about'>
$('#about').val('<?PHP echo $about;?>');
причина, по которой я не использовал значение, состоит в том, что у меня кнопка сброса может сбросить форму.
<input type='text' id='about' value='<?PHP echo $about;?>'>
если я помещаю внутри значения, кнопка сброса не будет работать.
Моя проблема заключается в том, что пользователь вводит текст с '
он закончит строку из моего сценария
ex.
$('#about').val('It cool');
любой способ решить эту проблему?
addslashes()
- это то, что вы хотите, см. ниже:
$('#about').val('<?PHP echo addslashes($about);?>');
Это то, что вы можете сделать, и это работает точно
<?php
$data = "aa ' aaa ' aaa";
?>
<script>
var aa = <?php echo json_encode($data); ?>;
alert(aa);
</script>
Итак, в вашем случае
$('#about').val('<?php echo json_encode($about);?>');
вы должны заключить свою строку в двойные кавычки javascript следующим образом:
$('#about').val("<?PHP echo $about;?>");
Используйте htmlspecialchars(), чтобы избежать цитаты.
$('#about').val('It\'s cool');
$('#about').val('<?PHP echo addslashes($about);?>');