1

ユーザーが検索語を入力できるフォームがあり、jquery ajax post を介して別のページに渡されます。プロセスページには、次のコードがあります。

<?php $searchText = $_REQUEST["searchText"]; ?>

<script type="text/javascript"> 
$('.facebookfeed').append('<p>Loading your results</p>');
  var url = 'https://graph.facebook.com/search?q=';
  var url = url+searchText.value;
  var url = url+'&type=post&limit=60&callback=?';       
    $.getJSON(url,function(json){
    console.log(data);
        var html = "<ul>";
            if (json.data == ''){html += '<li><h2>Sorry, no results were found. Try with another search term.</h2>'; }
        $.each(json.data,function(i,fb){
            if (!fb.message == ''){
                html += '<li><div class="box">'
                html += '<a href="http://www.facebook.com/'+ fb.from.id +'" target="_blank"><img src="https://graph.facebook.com/' + fb.from.id + '/picture" /></a>';
                html += '<p><span class="name"><a href="http://www.facebook.com/'+ fb.from.id +'" target="_blank">' + fb.from.name + '</a></span>  <br />';
                html += fb.message;
                html += '</p></div></li>';

            }
            });
        html += "</ul>";
        $('.facebookfeed').animate({opacity:0}, 500, function(){
                $('.facebookfeed').html(html);
                                                              });
        $('.facebookfeed').animate({opacity:1}, 500);

    });


</script> 

このコードは Chrome と Safari では正しく動作しますが、Firefox では次のエラーが発生します。

Error: searchText is not defined

ここで何が問題なのかわかりませんか?どんな助けでも大歓迎です。

4

1 に答える 1

2

searchText variabaleはphpにありますが、javascriptで使用しようとしています。javascript変数に転送してみてくださいvar searchText = "<?= $searchText?>";

次に、JavaScriptは次のようになります。

<script type="text/javascript"> 
    $('.facebookfeed').append('<p>Loading your results</p>');
    var searchText = "<?= $searchText?>";
    var url = 'https://graph.facebook.com/search?q=';
    url = url+searchText;
    url = url+'&type=post&limit=60&callback=?';   
    $.getJSON(url,function(json){
        ...    
    });
    ...
</script> 
于 2012-07-22T02:27:02.390 に答える