1

私は私のconfig.phpファイルにこれを持っています

     $DOMAIN = 'http://domain.com';
 $DOMAIN_SSL = 'http://domain.com';
$DOMAIN_ROOT = 'var/domain/root/html';

config.php各ページの最初の行に含まれています

今、私はこのjQueryコードを持っています

var country = '<?php echo $_GET['country'];?>'; 
var category = 'Cat' ;
var category = '<?php echo $DOMAIN.'/link'; ?>';

jQueryコードを使用してphpから変数を取得して、このようなjQueryコードを作成するにはどうすればよいですか

var country = '$country'; 
var category = 'Cat' ;
var url= '$domain','/link';

PHP を除外するために必要な元のコード

var country = '<?php echo $_GET['country'];?>'; 
                var category = 'CAT1' ;               
                function loadData(page){
                    loading_show();                    
                    $.ajax
                    ({
                        type: "POST",
                        url: "<?php echo $DOMAIN ?>/post.php",
                        data: "page="+page +"&category="+category+"&country="+country,
                        success: function(msg)
                        {
                        loading_hide();
                        $("#content-large").html(msg);
                        }
                    });
                }
                loadData(1);  // For first time page load default results
                $('#content-large .pagination li.active').live('click',function(){
                    var page = $(this).attr('p');
                    loadData(page);

                });           
                $('#go_btn').live('click',function(){
                    var page = parseInt($('.goto').val());
                    var no_of_pages = parseInt($('.total').attr('a'));
                    if(page != 0 && page <= no_of_pages){
                        loadData(page);
                    }else{
                        alert('Enter a PAGE between 1 and '+no_of_pages);
                        $('.goto').val("").focus();
                        return false;
                    }

                });
            });
4

3 に答える 3

4

更新された回答

PHPで使用するのと同じように、URLから値を取得しようとしている場合は$_GET、jQueryURLパーサーのようなものを使用することをお勧めします。

var country = $.url().param("country"); // Gets the 'country' parameter

jQuery URLパーサーをダウンロードします:https ://github.com/allmarkedup/jQuery-URL-Parser

元の回答

シンプルに保つことをお勧めします。フォーマットされた文字列とを使用するだけjson_encodeです。例えば:

$country  = "United States";
$domain   = "http://stackoverflow.com";
$category = 5;

printf( "var country  = %s;", json_encode( $country ) );
printf( "var category = %s;", json_encode( $category ) );
printf( "var domain   = %s;", json_encode( $domain . "/link" ) );

どの出力:

var country  = "United States";
var category = 5;
var domain   = "http:\/\/stackoverflow.com\/link";
于 2012-05-27T21:18:26.400 に答える
0

これがページ上にあり、別のJSファイルにはないと仮定すると、ステートメント全体をPHPで記述することができます。

<?php echo "var country = " . json_encode($_GET['country']) . ";"; ?>
于 2012-05-27T21:12:04.183 に答える
0

率直に言って、ここで物事を過度に複雑にする必要はないと思います。これは最も素晴らしい解決策ではないかもしれませんが、うまくいくはずです。

アイデアは、実際のページ (たとえば、home.php) で、次のような必要な値を含む HTML 要素をエコーすることです。

//Fill this array with all the values that you want available in JS
$JSONarray = array('all'=>'the','values'=>'you','want'=>'in','JS');
//Later print it on the page
echo "<span class='hidden' id='transferred_values'>"
    .json_encode($JSONarray)."</span>";

(補足:クラス「hidden」をユーザーに見えないように設定します。)

これで、外部 JS (たとえばscripts.js) は JS のみを使用して値を取得できるようになり、コンプレッサーを使用できるようになります。

$(function(){
    var transfer = $.parseJSON( $('#transferred_values').text() );
});

これが良い習慣や私が知らない規則に違反している場合はお知らせください:)

于 2012-05-27T21:51:23.307 に答える