2017-01-30 2 views
3

Я пытаюсь избежать одиночной цитаты ' в строке, передаваемой как аргумент вызова функции метода компонента.Vuejs1: Как я могу кодировать строку аргумента Vuejs в PHP

В моем шаблоне я печатаю (с помощью функции PHP htmlentities с ENT_QUOTES) что-то вроде:

<button 
    @click.prevent="test('own&#039;s')"> 
    Test 
    </button> 

Но кажется, что HTML Entity Перерывы vuejs разборе.

Вот скрипка демо https://jsfiddle.net/76ueL3f8/1/

Как я могу безопасно избежать аргумент в PHP?

Спасибо!

ответ

0

в Javascript, вы избегаете цитат с обратным шагом. В конце концов, он должен выглядеть следующим образом:

@ click.prevent = "тест ('собственный \' s')">

https://secure.php.net/manual/de/function.addslashes.php

addSlashes("own's") 
// should result in "own\'s" 
+0

Проблема с addslashes что ISN 't полностью безопасно, чтобы избежать атрибутов HTML. В javascript вы можете избежать использования кода сущности одной кавычки, но это не работает с vue. – Emilio

+0

Чтобы быть ясным, добавление не имеет защиты для двойной кавычки («). Потому что даже экранированная двойная кавычка закрывает этот атрибут. – Emilio

Смежные вопросы