[英]Jquery change HTML attribute using attr() returns object object
我讀了多篇不同的文章和問題都無濟於事。 我有一個PHP頁面,它將每隔X分鍾使用AJAX使用數據庫中的值更新easypiechart,並進行一次檢查。 在此示例中,我通過一個警告框將時間減少到10秒,以顯示所做的更改。
我可以使用attr()查看“數據百分比”,但是如果我嘗試更改“數據百分比”屬性的值,它將返回“對象對象”。
我試圖暫時只是手動將值更改為90,直到在添加ajax響應作為替換之前讓此功能起作用。
碼:
<!-- Link to Google CDN's jQuery + jQueryUI; fall back to local -->
<div id="test" class="easy-pie-chart txt-color-blue easyPieChart" data-percent="38" data-pie-size="160">
<span class="percent percent-sign txt-color-blue font-lg semi-bold"></span>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
if (!window.jQuery) {
document.write('<script src="js/libs/jquery-2.1.1.min.js"><\/script>');
}
</script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script>
if (!window.jQuery.ui) {
document.write('<script src="js/libs/jquery-ui-1.10.3.min.js"><\/script>');
}
</script>
<script>
// Setup AJAX request -->
function updateWidgets(){
$.ajax({
url: "widgetGet.php",
type: "POST",
success: function(data) {
var response = $.parseJSON(data);
var idea = parseInt(response.test);
var ID = $("#test").attr("data-percent");
var IDchange = $("#test").attr("data-percent", 90);
alert(ID);
}
});
}
updateWidgets();
setInterval(updateWidgets, 10000);
</script>
如果將警報從ID切換為IDchange,則可以看到我的問題所在。 謝謝大家,我知道我掌握在這里的社區中。
更新,可以理解,警報功能不應用於調試。 問題所在(不確定attr()是否是解決方案)是使用每10秒啟動的AJAX響應更新html屬性。 文檔如這表明屬性是使用這導致了我的困惑ATTR()更新。
簡而言之,如何使用每10秒接收一次數據的AJAX更新包含easypiechart的div的html屬性?
當使用兩個參數調用.attr()
函數時,它將返回jQuery對象。 換句話說,您將獲得$("#test")
。
這樣就可以做類似的事情
$("#test").attr("foo", "bar").hide();
如果要查看更改后的值,請:
var IDchange = $("#test").attr("data-percent", 90).attr("data-percent");
閱讀大量文章后,我找到了答案,那就是easypiecharts本身。 與easypiecharts相關的JS將涉及data屬性。 閱讀easypiecharts的文檔后,我找到了答案:
$('#test').data('easyPieChart').update(90); //to update the chart to 90%
我的問題是解決問題的方向,因為大量文章都引用了attr()函數。 對於我的場景,attr()函數不會更新圖表(也不會更新prop(),除非刷新圖表以直觀地看到更新)。 這些文章在與其他外部JS文件無關的元素上引用了此功能。
感謝大家的貢獻,今天我學到了一些重要的課程。 我希望有人發現此答案對希望使用AJAX和easypiecharts進行動態百分比更新的人有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.