Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么当我来自某个页面时,我的内容没有被加载,而当我在jquery mobile中刷新页面时,我的内容没有被加载_Php_Jquery_Html_Jquery Mobile_Cordova - Fatal编程技术网

Php 为什么当我来自某个页面时,我的内容没有被加载,而当我在jquery mobile中刷新页面时,我的内容没有被加载

Php 为什么当我来自某个页面时,我的内容没有被加载,而当我在jquery mobile中刷新页面时,我的内容没有被加载,php,jquery,html,jquery-mobile,cordova,Php,Jquery,Html,Jquery Mobile,Cordova,我需要以下方面的帮助。共有3页,第一页是静态的,第二页是动态的,第三页也是动态的 当它从第1个导航到第2个时,它会按显示的内容获取内容,但当它从第2个导航到第3个时,它无法加载内容。但当我刷新页面时,它会加载内容。我不知道这里面出了什么问题。有人能帮我吗 Javascript: <script type="text/javascript"> $(document).ready(function () { var b_id = getUrlVars()["b_i

我需要以下方面的帮助。共有3页,第一页是静态的,第二页是动态的,第三页也是动态的

当它从第1个导航到第2个时,它会按显示的内容获取内容,但当它从第2个导航到第3个时,它无法加载内容。但当我刷新页面时,它会加载内容。我不知道这里面出了什么问题。有人能帮我吗

Javascript:

<script type="text/javascript">
    $(document).ready(function () {
        var b_id = getUrlVars()["b_id"];
        $.ajax({
            url: 'http://localhost/ajax_practice/php/get_categories.php?b_id=' + b_id,
            dataType: 'jsonp',
            jsonp: 'jsoncallback',
            timeout: 5000,
            success: function (data, status) {
                $.each(data, function (i, item) {
                    var output = "";
                    $(".main_category").append(output);
                    $(".main_category").listview("refresh");
                    output += "<li>";
                    output += "<a href='directory.html?c_id=" + item.id + "&b_id=" + b_id + "' data-transition='slide' rel='external'>";
                    output += item.category_name;
                    output += "</a>";
                    output += "</li>";
                    $(".main_category").append(output);
                    $(".main_category").listview("refresh");
                });
            }
        });
    });
</script>

$(文档).ready(函数(){
var b_id=getUrlVars()[“b_id”];
$.ajax({
网址:'http://localhost/ajax_practice/php/get_categories.php?b_id=“+b_id,
数据类型:“jsonp”,
jsonp:'jsoncallback',
超时:5000,
成功:功能(数据、状态){
$。每个(数据、功能(i、项){
var输出=”;
$(“.main_category”)。追加(输出);
$(“.main_category”)。列表视图(“刷新”);
输出+=“
  • ”; 输出+=“”; 输出+=“
  • ”; $(“.main_category”)。追加(输出); $(“.main_category”)。列表视图(“刷新”); }); } }); });
    Html页面

    <div data-role="page" id="page">
        <div data-role="header">
            <ul class="header_box" data-theme="d">
                <li>
                    <select data-native-menu="false" name="selectmenu" id="selectmenu" data-theme="d">
                        <option value="option1">Option 1</option>
                        <option value="option2">Option 2</option>
                        <option value="option3">Option 3</option>
                    </select>
                    <select data-native-menu="false" name="selectmenu2" id="selectmenu2" data-theme="d">
                        <option value="option1">Option 1</option>
                        <option value="option2">Option 2</option>
                        <option value="option3">Option 3</option>
                    </select>
                </li>
                <li>
                    <a>
                        <img src="images/logo1.png"><span>www.justclick.co</span>
                    </a>
                </li>
                <li>
                    <select data-native-menu="false" name="selectmenu2" id="selectmenu3" data-theme="d">
                        <option value="option1">Option 1</option>
                        <option value="option2">Option 2</option>
                        <option value="option3">Option 3</option>
                    </select>
                    <select data-native-menu="false" name="selectmenu2" id="selectmenu4" data-theme="d">
                        <option value="option1">Option 1</option>
                        <option value="option2">Option 2</option>
                        <option value="option3">Option 3</option>
                    </select>
                </li>
            </ul>
            <div class="header_search">
                <div class="search_input">
                    <input type="text" placeholder="What ? e.g. Hotel" data-theme="d">
                    <input type="text" placeholder="Where? eg. Area" data-theme="d">
                </div>
                <div class="search_button">
                    <a>
                        <img src="images/search_button.png">
                    </a>
                </div>
                <div class="clear"></div>
            </div>
        </div>
        <div data-role="content">
            <div data-role="header">
                <div class="service_heading">Business Information & Services</div>
            </div>
            <ul data-role="listview" class="main_category"></ul>
        </div>
    </div>
    
    
    
    • 选择1 选择2 选择3 选择1 选择2 选择3
    • www.justclick.co
    • 选择1 选择2 选择3 选择1 选择2 选择3
    商业信息与服务
      php代码

      <?php header( 'Content-type: application/json'); 
      
          include 'connect.php'; 
          $b_id=$_GET[ 'b_id']; 
          $sql_select=mysql_query( "SELECT * FROM business_category WHERE b_id=$b_id") or die(mysql_error()); 
          $records=array(); 
          if(mysql_num_rows($sql_select)>0) { 
              while($row=mysql_fetch_array($sql_select)) { 
                  $records[] = $row; 
              } 
              echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');'; 
          } else { 
              echo 'data not selected'; 
            } 
      ?>
      
      
      

      当我从上一页获取内容时,我无法获取该页的内容,但当我刷新该页时,我获取了该内容。为什么会这样?

      jQueryMobile默认使用Ajax机制在页面之间进行转换。请注意,通过Ajax加载新页面时,
      head
      标记中包含的脚本和样式不会加载。jQueryMobile只加载新页面的
      主体
      元素,更具体地说是
      data role=“page”
      元素

      但是,当通过HTTP加载页面时,通常会加载
      head
      标记中的脚本和样式。这解释了为什么直接打开页面时页面会正确显示

      为了解决问题,您必须执行以下操作:

      • $(document).ready(function(){
        替换为
        $(document).在('pageinit','您的页面id',function(){
      • 将第二页的
        脚本
        标题
        标记移动到
        中,或者将
        脚本
        放在公共JS文件中,并将其加载到第一页的
        标题
        标记中
      我希望这有帮助