我有一個html文件,其中我使用AJAX和PHP動態加載數據。 他們沒有什麼大不了的,因爲他們工作得很好,但我仍然有一個問題。 我有(用於顯示目的)創建了兩個div,它們在DOM中顯示的字面意思相同,但源代碼中也顯示了一個。 (在一個DIV是動態加載的,在我從一開始加載的結果已經是另外一個。) 像這樣:Jquery只使用源代碼?
<div>
<ul>
<!-- Here is some data which is shown correct -- >
<!-- (too much to REALLY put it in here -->
</ul>
</div>
<div id="result">
<!-- This should show the exact same output, but well isn't... -->
</div>
我經過一些類似的事情已經看到,但沒有任何幫助我解決我的問題,因爲我對「結果」的請求是
function kommissionsakte(o, s) {
$("#result").empty();
var xmlHttp = {};
xmlHttp = ajaxHandler(xmlHttp);
// Wenn das Objekt erfolgreich erzeugt wurde
var url = "ajax/getKommissionsakten.php";
suchwert = escape($("#suchwert").val());
var params = "o=" + o + "&s=" + s + "&suchwert=" + suchwert;
if (suchwert != '') {
$("#suchwert").css("border-color", "#31ae1c");
loading();
xmlHttp.open("POST", url, true);
//Headerinformationen für den POST Request
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4) {
$("#result").html(xmlHttp.responseText);
closeLoading();
}
};
xmlHttp.send(params);
} else {
$("#suchwert").focus();
$("#suchwert").css("border-color", "#b20e10");
}
}
我的想法是,以某種方式得到#result
不是DIV ID但進入格,但我不好,所以我不知道怎麼樣。
編輯:好的長篇解釋:
我嘗試使用jQuery到頁面加載文件樹,已加載。創建樹的代碼工作正常,當我嘗試將其加載到此頁面時,它不起作用。我讀過jQuery使用DOM而不是源代碼,所以它應該正常工作,但事實並非如此。
我可以在搜索功能中搜索關鍵字,文件樹會顯示它們。在手動創建的div中,是代碼,它創建樹並且jquery正確地操作它,如果我現在將完全相同的代碼加載到另一個div中,jquery不會操縱它。
另外,我真的(像真的很糟糕的JS),所以這將是非常非常好,有一個長的解釋在答案。
EDIT2: 請求的PHP文件代碼:
<?php
include '../include/ebene.inc.php';
include $ebene.'include/error_reporting.inc.php';
include $ebene.'include/db.inc.php';
include $ebene.'include/getSprache.inc.php';
include $ebene.'include/funktionen-standard.inc.php';
include $ebene.'include/funktionen-individuell.inc.php';
include $ebene.'include/konfig.inc.php';
if(isset($_POST['suchwert'])){
$suchwert =($_POST['suchwert']);
$php_file_tree = '';
$first_call = true; \t
$neue_seite = false;
\t if($suchwert != ''){
\t \t $parentsql = "SELECT TOP 10 KOM_Nummer from dbo.V_Kommisions_Akte_EN WHERE KOM_Nummer LIKE '%$suchwert%' group by KOM_Nummer";
\t \t $parameter = array();
\t \t $optionen = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
\t \t $parent = sqlsrv_query($dbD3, $parentsql, $parameter, $optionen);
\t \t $parentanzahl = sqlsrv_num_rows($parent); \t
\t \t if($parentanzahl != 0){
\t \t $neue_seite = true;
\t \t
\t \t \t \t
\t \t \t if($anzahl >= 200){
\t \t \t
\t \t \t \t echo '<br /><div align="center">'.$var['verfeinern'].'</div>';
\t \t \t
\t \t \t }else{
\t \t \t
\t \t \t \t echo '<br /><div align="center">'.$var['anzahl_ergebnisse'].': '.$parentanzahl.'</div>';
\t \t \t \t
\t \t \t }
\t \t $php_file_tree .= "<ul";
\t \t if($first_call) {$php_file_tree .= " class=\"php-file-tree\""; $first_call = false;}
\t \t $php_file_tree .= ">";
\t \t
\t \t
\t \t \t while($komnr = sqlsrv_fetch_array($parent, SQLSRV_FETCH_ASSOC)) {
\t \t \t
\t \t \t \t $php_file_tree .= "<li class=\"pft-directory\"><a href=\"#\">" . htmlspecialchars($komnr['KOM_Nummer']) . "</a><ul>";
\t \t \t \t $komnrregister = $komnr['KOM_Nummer'];
\t \t \t \t \t
\t \t \t \t $subsql = "SELECT TOP 10 KOM_Nummer, Register from dbo.V_Kommisions_Akte_EN where KOM_Nummer = '$komnrregister' group by KOM_Nummer, Register";
\t \t \t \t $parameter = array();
\t \t \t \t $optionen = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
\t \t \t \t $sub = sqlsrv_query($dbD3, $subsql, $parameter, $optionen);
\t \t \t \t $subanzahl = sqlsrv_num_rows($sub); \t
\t \t \t \t
\t \t \t \t while($register = sqlsrv_fetch_array($sub, SQLSRV_FETCH_ASSOC)) {
\t \t \t \t
\t \t \t \t
\t \t \t \t \t $php_file_tree .= "<li class=\"pft-directory\"><a href=\"#\">" . htmlspecialchars($register['Register']) . "</a><ul>";
\t \t \t \t \t $registerdokuid = $register['Register'];
\t \t \t \t \t
\t \t \t \t $slavesql = "SELECT TOP 10 KOM_Nummer, Register, doku_id from dbo.V_Kommisions_Akte_EN where Register = '$registerdokuid' AND KOM_Nummer = '$komnrregister' group by KOM_Nummer, Register, doku_id";
\t \t \t \t $parameter = array();
\t \t \t \t $optionen = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
\t \t \t \t $slave = sqlsrv_query($dbD3, $slavesql, $parameter, $optionen);
\t \t \t \t $slaveanzahl = sqlsrv_num_rows($slave); \t
\t \t \t \t
\t \t \t \t \t while($doku = sqlsrv_fetch_array($slave, SQLSRV_FETCH_ASSOC)) {
\t \t \t \t \t
\t \t \t \t \t \t $php_file_tree .= "<li class=\"pft-file ext-xls\"><a href=\"#\">" . htmlspecialchars($doku['doku_id']) . "</a></li>";
\t \t \t \t \t \t
\t \t \t \t \t }
\t \t \t \t $php_file_tree .= '</ul></li>'; \t
\t \t \t \t } \t
\t \t \t \t $php_file_tree .= '</ul>';
\t \t \t }
\t \t $php_file_tree .= '</ul>';
\t \t }
\t
\t \t echo $php_file_tree;
\t //return ($php_file_tree);
\t
\t
\t
\t }
} \t \t \t \t
?> \t \t \t \t
你的問題根本不清楚。你想做什麼?如果兩個div的內容應該是相同的,那麼當你只能克隆原始文件時,爲什麼還要打開AJAX請求呢? 'xmlHttp.responseText'的價值是什麼?你在打什麼網址?你沒有描述這個問題,並且沒有足夠的信息來診斷任何問題。 – 2015-02-11 08:05:11
爲什麼你不使用$ .ajax({}),因爲你正在使用jQuery? – Julo0sS 2015-02-11 08:05:21
是的...請說出你的問題並多解釋一下 – Mayhem 2015-02-11 08:08:49