мы можем передать переменную, содержащую наш URL в jquery $ .get () из файла php - PullRequest
0 голосов
/ 15 августа 2011

привет, у меня есть график, созданный из файла .csv с помощью jquery $ .get ().но в настоящее время я передаю жестко закодированное имя файла в качестве первого аргумента в мой метод get ().Моя функция находится в файле с именем index.js и похожа на это

    $(document).ready(function() { 
        $.get('myproject.csv', function(data) { ..... } 
    ....... });

, но я хочу передать переменную, которая содержит имя файла, чтобы у него могло быть любое имя файла вместо «myproject».csv '

    $.get($filename, function(data) { 

где $ filename может быть любым переданным именем файла.я не очень разбираюсь в jquery и все так не уверен.

Теперь главное, что у меня есть файл .phtml, где я включил этот файл javascript как встроенный скрипт.Поэтому я понятия не имею, как передать переменную из этого файла .phtml в этот файл JavaScript.Мой файл .phtml:

      <head>.......</head>
      <body>
      <script type="text/javascript" src="/PFFd02/public/media/js/modules/appone/index/index.js"></script>      // this is where i need to pass my variable. 
      ...........
      </body>

любая помощь ???

Ответы [ 3 ]

2 голосов
/ 15 августа 2011

Это должно работать:

var filename=<?=json_encode($filename)?>;
$.get(filename, function(data) { 

Устанавливает для переменной Javascript filename значение переменной PHP $filename и вызывает $.get(filename).

1 голос
/ 15 августа 2011
$.get(<?php echo json_encode($filename) ?>, function(data) {

Использование json_encode гарантирует, что любые метасимволы JS в имени файла не "сломают" ваш скрипт.

0 голосов
/ 16 августа 2011

Спасибо вам всем. Я нашел простой способ передачи переменной из php-файла в js.

Я создал переменную view в файле контроллера и присвоил ей строку, содержащую тег div, следующим образом:

    $this->view->filename = "<div id=\"filename\" style=\"display:none\">".$file."</div>";

где $ file - это переменная, которая содержит мое имя файла, которое я должен передать в javascript. Теперь, на мой взгляд, я сделал что-то вроде этого

    <?php echo $this->filename ?>

, что делает имя файла доступным для моего просмотра, где я должен запустить этот JavaScript. Затем в моей функции javascript я инициализировал переменную, подобную этой:

        var file = $('#filename').text();
        $.get(file, function(data) {

и поэтому я получил переменную, переданную из php-файла в мою функцию javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...