使用AJAX更新JSP页面标签值

时间:2013-11-14 05:37:40

标签: java jquery ajax jsp

我有一个如下的JSP页面,我想在5000毫秒间隔内快速更新基于数据库值的标签“lblscore”。

<script type="text/javascript">  
            $(document).ready(function(){   

                setInterval(function() {
                     $.ajax({  
                        url:'TimerAjax?userid='+document.getElementById("uid").value,
                        type:'post', 
                        dataType: 'json',  
                        success: function(data) {  

                            $('#lblscore').val(data.score);  

                        }  
                    });  
                }, 5000);
            });  
        </script>  
 <div class="bodycontent">

                <table>
                    <tr>
                        <td>Current Score</td><td><label id="lblscore"></label></td>
                    </tr>
                </table>
</div>

我的servlet如下所示,

response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try {

            ResultSet rs = db.selectQuery("select * from tbl_score where userid = '2'");
            JSONObject json = new JSONObject();
            while (rs.next()) {
                json.put("score", rs.getString("currentscore"));


            }

            out.print(json);

        } catch (Exception e) {
            e.printStackTrace();
        }

但标签永远不会更新,请问有人可以在这里建议或纠正我的错误吗?

1 个答案:

答案 0 :(得分:3)

<label/>没有value属性。使用html()代替val()

setInterval(function() {
   $.ajax({  
     url:'TimerAjax?userid='+document.getElementById("uid").value,
     type:'post', 
     dataType: 'json',  
     success: function(data) { 
            $('#lblscore').html(data.score); //Here use html()
           }  
      });  
 }, 5000);