javascript - 使用 jQuery 和 HTML 对 XML 数据进行分页

标签 javascript jquery html xml

我有一个包含问题列表的 XML 文件。我想在加载 HTML 页面时加载列表中的第一个问题,并将答案作为单选按钮加载。当选择其中一个单选按钮时,我想显示结果以及继续按钮。继续按钮将转到 XML 文件中的第二个元素。

到目前为止,我已经得到以下内容:

function generateQuestion(i) {
    $(document).ready(function() {
        $.get('quiz.xml', function(d) {
            alert('Loaded XML');
            $(d).find('question').get(0, function() {
                alert('Loaded Question');
                var $question = $(this);
                var questionContent = $question.attr("content");
                $(questionContent).appendTo("#quizQuestion");
            });
        });
    });
}

但是,问题的内容永远不会加载到元素中。当我去获取文档中的第一个元素时,它看起来挂起。我的猜测是没有重载将对象注入(inject)到函数中。

我说得对吗?有人有任何快速资源来显示我想要生成的类似基本测验的示例吗?

更新:我已将代码更新为以下内容,它似乎被属性属性捕获:

function generateQuestion(i) {
    $(document).ready(function() {
        $.get('quiz.xml', function(d) {
            var $question = $(d).find('question').get(i);
            var questionContent = $question.attr('content');
            alert(questionContent);
            $(questionContent).appendTo("#quizQuestion");
        });
    });
}

有什么想法吗?

最佳答案

get() 函数返回非包装的 set 元素,在本例中它将是 xml 元素。

$.get('quiz.xml', function(d) {
    var question = $(d).find('question :eq(0)');
    var questionContent = question.attr('content');
    alert(questionContent);
    $(questionContent).appendTo("#quizQuestion");
});

另一种选择是重新包装对象

$.get('quiz.xml', function(d) {
    var question = $(d).find('question').get(0);
    var questionContent = $(question).attr('content');
    alert(questionContent);
    $(questionContent).appendTo("#quizQuestion");
});

另外,我不确定为什么你在函数调用中包含 $(document).ready 。你什么时候调用这个函数。如果是在文档加载之后,那么您实际上并不需要它。

关于javascript - 使用 jQuery 和 HTML 对 XML 数据进行分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/513567/

相关文章:

javascript - 试图排序 {key : object} pairs by object property with Javascript and Underscore

html - 按钮在 react 中不合理

html - 如何创建 'responsive' 列表 : creating multiple columns to fit available width?

javascript - 如何使用 dojo 方面调用常规 JavaScript 函数

javascript - 如何识别正在使用哪个元素滚动?

javascript - Discord.js 如何切片链接

JavaScript:ajax提交错误

javascript - jQuery 添加 $(this) 到回调

jquery - 使用 jquery 添加新的父 div 树

html - CSS - 悬停时更改多项内容