我是一个尝试创建问答应用程序的菜鸟。目前,我一直在尝试使用Jquery的简单性。我需要一个Jquery或Javascript函数,该函数(1)允许用户从下拉框中选择一个Q&A类别,(2)告诉Jquery代码根据用户的选择选择哪个XML文件。选择XML文件后如何处理是另一回事。

我成功创建了带有预定义XML文件变量的函数-

$("#target").click(function() {
    var a = 'TestFile2.xml';
    var b = 'TestFile3.xml';
    var c = 'TestFile4.xml';
    $.ajax({
        url: c,
        type: 'GET',
        dataType: 'xml',
        success: parseXML
    });
})


但是我没有成功创建一个将XML文件连接到下拉菜单的函数。这是我一直在尝试的JavaScript函数-

<div id="target">
  Click here
</div>

<script type="text/javascript">

function (selFile()
{

var p = document.LoadCategory.Load.value;

    if (p == "testFile2") {var x = "TestFile2.xml"}

    if (p == "testFile3") {var x = "TestFile3.xml"}

    if (p == "testFile4") {var x = "TestFile4.xml"}

})

$("#target").click(function()

{

 $.ajax({

            url: x,

            type: 'GET',

            dataType: 'xml',

            success: parseXML

       });
})


我在上面尝试了许多变体,但无济于事。我有一种感觉,我在做一些非常简单,非常错误的事情。如果有任何提示或建议,我将不胜感激。

最佳答案

您需要在函数var x声明之前将selFile向上移动:

var x;
function (selFile()
//... rest of your code


并从var语句中删除if语句:

if (p == "testFile2") {x = "TestFile2.xml"}
if (p == "testFile3") {x = "TestFile3.xml"}
if (p == "testFile4") {x = "TestFile4.xml"}


编辑:

正确的自我执行功能还应该是:

var x;
(function selFile() {
    var p = document.LoadCategory.Load.value;
    if (p == "testFile2") {x = "TestFile2.xml"}
    if (p == "testFile3") {x = "TestFile3.xml"}
    if (p == "testFile4") {x = "TestFile4.xml"}

})();

关于javascript - jQuery-根据下拉菜单选择加载XML文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11099712/

10-11 13:31