#javascript #php #jquery #yii
#javascript #php #jquery #yii
Вопрос:
Я хочу перейти к URL-адресу в событии щелчка элемента, вот мой код :
$('#job').click(function() {
window.location.href = "<?php echo $this->createUrl('jobs/view');?>";
});
но URL-адрес загружается как http://mysite/<?php echo $this->createUrl('jobs/view');?>
вместо http://mysite/jobs/view
, поэтому php-скрипт не запускался, как я могу решить эту проблему?
Комментарии:
1. это в файле .js или в файле .php? Если ваш веб-сервер не настроен на синтаксический анализ файлов .js как php, он не будет работать.
2. не загружайте вывод php непосредственно в контекст JS. вы уничтожите весь блок JS, если вывод содержит какие-либо метасимволы JS. всегда выводите через
json_encode()
, чтобы предотвратить JS-эквивалент атак sql-инъекций.
Ответ №1:
Измените имя файла с yourfile.js
на yourfile.php
и оберните весь JS-код внутри script
тега.
Комментарии:
1. Nitpick: OP, возможно, не нужно переносить код внутри тега script .. он может использовать
<script src="myfile.php" type="text/javascript">
до тех пор, покаmyfile.php
он обслуживается с правильным типом MIME.
Ответ №2:
Вам не нужно использовать PHP для создания URL-адреса. Просто используйте
$('#job').click(function() {
window.location.href = "/jobs/view";
});