Hallo Forumler!
Ich habe ein Problem zu deren Lösung ich irgendwie nichts passendes im Netz gefunden habe. Ich möchte per javascript auf eine XML Datei zugreifen, dort nach einem "Suchstring" suchen und wenn gefunden in diesem Datensatz dann den Wert eines anderen Feldes in die variable des From-Feldes übergeben. D.h. ich benötige aus der XML nur einen einzigen spezifischen Feld und nicht komplett die Liste. Die Beispiele im Netz beziehen sich fast komplett auf "Liste erzeugen".... :(
Habe hierzu zunächst ein Muster der XML-Datei:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<preiseBau>
<reinigungEFHETW>
<suchfeld>Test</suchfeld>
<etwefhart>Hallo 1</etwefhart>
<zimmer>1</zimmer>
<qm>10</qm>
<preis>100</preis>
</reinigungEFHETW>
<reinigungEFHETW>
<etwefhart>Hallo 2</etwefhart>
<zimmer>1</zimmer>
<qm>10</qm>
<preis>100</preis>
</reinigungEFHETW>
<reinigungEFHETW>
<etwefhart>Hallo 3</etwefhart>
<zimmer>1</zimmer>
<qm>10</qm>
<preis>100</preis>
</reinigungEFHETW>
</preiseBau>
Script Code zum suchen:
$('#flaeche').on('change', function () {
var str1 = $('#immobilienart').val().substr(0, 3)
var str2 = $('#reinigungsart').val()
var str3 = $('#zimmer_1').val().substr(0,1)
if ($('#zimmer_1').val().length == 3) {
var str3a = $('#zimmer_1').val().substr(0,1)
var str3b = $('#zimmer_1').val().substr(2,1)
var str3 = str3a+str3b
}
var str4 = $('#flaeche').val()
strSearchterm = str1+str2+str3+str4
alert (strSearchterm)
// XML Datei laden
$.ajax({
type: "GET",
url: "http://www.maksy-clean.de/js/xml_preise_immo.xml",
dataType: "xml",
success: function (data) {parseXML(data)}
})
function parseXML(data) {
$(data).find('reinigungEFHETW')
.find("suchfeld:contains('"+strSearchterm+"')")
.each(function(){
$(this).find('preis').text().appendTo('#preis')})
}
});
Irgendwie wird die Abfrage jedoch nicht ausgeführt.... (Bis zur zusammenstellung vom Suchstring funktioniert alles!!!) Was übersehe ich?
Hoffe dass jemand mir helfen kann und bedanke mich schon im Voraus dafür. HG Michael