Как правильно отправлять переменные php через параметры ng-click

0

В настоящее время я пытаюсь отправить время и дату с php на мой угловой контроллер с помощью ng-click.

$time is a date
$today is a datetime

Может кто-нибудь объяснить мне, почему это работает

<button ng-click="getClickInfo('<?php echo $time; ?>', '<?php echo $today; ?>')";</button>

Но когда я пытаюсь достичь такого же результата в эхо, как это, это дает мне разные и неправильные результаты

<?php echo '<button ng-click="getClickInfo(' . $time . ', ' . $today . ')";></button>'; ?>

Я попытался найти в Интернете решение, но я не мог найти тему об этом. Надеюсь, кто-то может объяснить мне, что происходит в этом сценарии. Перенаправление на любые статьи по этой теме было бы очень полезно для меня.

Вывод:

01:00 // incorrect output
01/01/1970 // incorrect output

20.30 // desired output
22-04-2016 // desired output
  • 0
    Ваша HTML-строка неверна. Это должно быть: '<button ng-click = "getClickInfo ('. $ Time. ','. $ Today. ')"> </ Button>' Не могу точно сказать, что это именно ваша проблема, но для правильный HTML, который нужно исправить
  • 0
    Исправлена HTML-строка, но все равно возвращает мне тот же неверный результат
Показать ещё 3 комментария
Теги:

1 ответ

1
Лучший ответ

Вы должны указать аргументы функции javascript, иначе вы получите непредсказуемые результаты. Ctach здесь заключается в том, что атрибут HTML ng-click должен быть заключен в двойные кавычки, а значение атрибута (ваша функция) не должно содержать двойные кавычки, поскольку оно нарушит HTML

Кроме того ; не требуется, вы помещаете его вне значения атрибута HTML ng-click, что неверно HTML

Здесь исправление, обратите внимание, что кавычки экранируются с обратной косой чертой внутри строк PHP:

<?php echo '<button ng-click="getClickInfo(\'' . $time . '\', \'' . $today . '\')"></button>' ?>

Здесь более читаемый способ сделать это, я бы рекомендовал этот подход:

<?php echo '<button ng-click="getClickInfo(' . "'$time', '$today'" . ')";></button>' ?>
  • 0
    Большое спасибо, я искал что-то подобное, но я просто не знал, как это сделать. Это в значительной степени решило это.
  • 0
    Я рад, что могу помочь

Ещё вопросы

Сообщество Overcoder
Наверх
Меню