0

我在 jQuery mobile 上使用fyneworks jquery 星级评分,并且在一个使用 PHP 函数动态创建的页面中,一切正常。但是在 PHP 页面中包含“评级选项卡”的另一个页面中,在我刷新页面之前不会呈现星星。

 <?php
session_start();
if (!session_is_registered('autorizzato')) {
  echo "<h1>Area riservata, accesso negato.</h1>";
  echo "Per effettuare il login clicca <a href='login.php'><font color='blue'>qui</font></a>";
  die;
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>Title</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <script src="jquery-1.8.2.min.js"></script>
    <script src="jquery.mobile-1.2.0.min.js"></script>
    <link rel="stylesheet" href="jquery.mobile-1.2.0.min.css" />

    <script src='rating/jquery.MetaData.js' type="text/javascript" language="javascript"></script>
    <script src='rating/jquery.rating.js' type="text/javascript" language="javascript"></script>
    <link href='rating/jquery.rating.css' type="text/css" rel="stylesheet"/>

    <script src="logged.js"></script>
</head>
<body background="#000000">

<div data-role="page"  id="lista">
    <div data-role="header" data-position="fixed">
    <input type="submit" onClick="back()" data-icon="back" class="ui-btn-left" value="Indietro" />
        <h1>TITLE</h1>
    <a href="logout.php" data-icon="gear" class="ui-btn-right">Logout</a>
    </div>
    <div data-role="content" data-theme="a">
    <form id="save" action="saveComment.php" method="post" data-ajax="false">
    <div data-role="fieldcontain">
        <label for="textarea">Comment:</label>
        <textarea cols="40" rows="8" name="textarea" id="textarea"></textarea>
    </div>
        <label>Rating:</label>
        <div data-role="content" >
                <input data-role="none" name="stars" type="radio" class="star" value="1"/>
                <input data-role="none" name="stars" type="radio" class="star" value="2"/>
                <input data-role="none" name="stars" type="radio" class="star" value="3"/>
                <input data-role="none" name="stars" type="radio" class="star" value="4"/>
                <input data-role="none" name="stars" type="radio" class="star" value="5"/>
        </div> 

        <input type="hidden" name="id" value="<?php echo $_GET["id"]; ?>" />
         <input type="hidden" name="rating" id="rating" value="1" />
        <fieldset id="actions">
            <input type="submit" id="submit" value="Invia">
        </fieldset>
    </form>

    </div>

</div>
</body>
</html>

记录的.js

$(document).load(function () {  
     $('#rt').click(function () {
            var div = $(this);
            div.children('input').each(function () {
                if ($(this).is(':checked')){
                    $('#rating').attr("value", $(this).val());
                } 
            });
        });

    });

我注意到由 PHP 动态创建的页面正在访问我的数据库,显示大约需要 2-3 秒,并且所有内容都已呈现。只有在我按 F5 并刷新页面后才会呈现第二个页面。

我错过了什么?

4

1 回答 1

1

你试过 .ready 吗?

$(document).ready(function() {
// Handler for .ready() called.
});
于 2013-04-07T12:54:30.867 回答