[英]javascript - load html content from ajax call
我有一個 HTML 頁面,它有 Ajax 調用來加載表格內容
<html>
....
<script sec:haspermission="VIEW_NOTE" th:inline='javascript'>
require(['app/agent/viewGlobalAgent'], function (){
var individualId= [[${model.agent.individual.id}]];
var agentId= [[${model.agent.id}]];
$.get("/notes/referenceTable.html?individualId="+individualId+"&agentId="+agentId, function(data){
console.log("theData " , data);
var noteList = $("#note-list-container2").value;
var fileList = $("#file-list-container2").value;
// document.getElementById("note-list-container").innerHTML = noteList;
// document.getElementById("note-file-form").innerHTML = fileList;
$("#note-list-container").html(noteList);
$("#note-file-form").html(fileList);
});
</script>
....
</html>
Ajax 調用加載的 html
<div>
<div id="note-list-container2">
....
</div>
<div id="file-list-container2">
....
</div>
</div>
我需要在 Ajax 調用的回調中訪問這兩個 div
$.get("/notes/referenceTable.html?individualId="+individualId+"&agentId="+agentId, function(data){
我試圖訪問它們但它不起作用
$("#note-list-container2").value
在加載的 html 中訪問 div 的任何方式
由於您希望新 html 中的內容作為data
返回,因此您希望將該數據包裝在$()
並在該對象中進行查詢
然后使用text()
或html()
因為value僅用於表單控件,而不是內容元素
$.get(url, function(data) {
var $data = $(data);
var noteList = $data.find("#note-list-container2").text();// or html()
var fileList = $data.find("#file-list-container2").text();
$("#note-list-container").html(noteList);
$("#note-file-form").html(fileList);
});
jQuery.text() :獲取匹配元素集合中每個元素的組合文本內容,包括其后代,或者設置匹配元素的文本內容
jQuery.val() :獲取匹配元素集中第一個元素的當前值或設置每個匹配元素的值。 .val() 方法主要用於獲取表單元素的值,例如 input、select 和 textarea。 當在一個空集合上調用時,它返回 undefined。
div 元素沒有值....
一個例子:
console.log('text(): ' + $("#note-list-container2").text()); console.log('val(): ' + $("#note-list-container2").val());
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="note-list-container2"> .... </div>
我猜你正在使用 jQuery。 HTML 內容可以通過 .html() 而不是值來訪問。 div 元素上沒有 value 屬性。 更重要的是,您應該嘗試在更新元素之后而不是之前獲取元素的內容。 此外,選擇器應該匹配。 從您的示例中,您似乎正在嘗試獲取 #note-list-container2 的內容,但您正在更新 #note-list-container 元素。 鑒於您的示例 AJAX 調用輸出,這些 ID 之一是錯誤的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.