通过JS/AAJAX在XML文件中搜索1个数据

Search in XML-File via JS/AJAX just for 1 Data

本文关键字:搜索 1个 数据 文件 XML JS AAJAX 通过      更新时间:2023-09-26

我已经在寻找解决方案近3天了。我所发现的只是关于开放式XML查找结果!并将它们显示在页面上。我试着使这些样品适应我的需要。但没有得到我想要的结果。

这里的XML示例我有:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<preiseBau>
    <reinigungEFHETW>
        <id>1</id>
        <suchfeld>Test</suchfeld>
        <immoart>Hallo 1</immoart>
        <zimmer>1</zimmer>
        <qm>10</qm>
        <preis>100</preis>
    </reinigungEFHETW>
    <reinigungEFHETW>
        <id>2</id>
        <suchfeld>Test2</suchfeld>
        <immoart>Hallo 2</immoart>
        <zimmer>2</zimmer>
        <qm>20</qm>
        <preis>200</preis>
    </reinigungEFHETW>
    <reinigungEFHETW>
        <id>3</id>
        <suchfeld>Test3</suchfeld>
        <immoart>Hallo 3</immoart>
        <zimmer>3</zimmer>
        <qm>30</qm>
        <preis>300</preis>
    </reinigungEFHETW>  
</preiseBau>

这是我试图查找并附加到字段的脚本:strSearchterm=str1+str2+str3+str4

// XML Datei laden
$.ajax({
    type: "GET",
    url: "../js/myxml.xml",
    dataType: "xml",
    success: function (xml) {
    $(xml).find('reinigungEFHETW')
            .find("suchfeld:contains('"+strSearchterm+"')")
            .each(function(){
    var x = $(this).find('preis').val()
           alert (x)
    }

也很头疼:

strSearchterm = str1+str2+str3+str4
    // XML Datei laden
    $.ajax({
        type: "GET",
        url: "../js/myxml.xml",
        dataType: "xml",
        success: function (xml) {
        $(xml).find("suchfeld:contains('"+strSearchterm+"')")
                .each(function(){
        alert ($(this).find('preis').text())
               //alert (xl)
        })
        }

我想做的事:建立一个搜索项;打开xml文件,在"suchfeld"中找到searchterm(unique!),并将文本附加到"preis"中。

我的代码出了什么问题?在web/youtube中搜索,我找不到查找1个数据的解决方案!希望有人能把我踢向正确的方向:D顺致敬意,Michael

以下是我的想法:

var xml = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <preiseBau> <reinigungEFHETW> <id>1</id> <suchfeld>Test</suchfeld> <immoart>Hallo 1</immoart> <zimmer>1</zimmer> <qm>10</qm> <preis>100</preis> </reinigungEFHETW> <reinigungEFHETW> <id>2</id> <suchfeld>Test2</suchfeld> <immoart>Hallo 2</immoart> <zimmer>2</zimmer> <qm>20</qm> <preis>200</preis> </reinigungEFHETW> <reinigungEFHETW> <id>3</id> <suchfeld>Test3</suchfeld> <immoart>Hallo 3</immoart> <zimmer>3</zimmer> <qm>30</qm> <preis>300</preis> </reinigungEFHETW> </preiseBau>';
var strSearchterm = 'Test';
$(xml).find("suchfeld:contains('"+strSearchterm+"')")
    .each(function(index, xmlNode){
		$("p").append( $(xmlNode).siblings('preis').text() + " ")
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p></p>