2012-06-19 82 views
1

我是一個嘗試創建q &應用程序的noob。目前,我一直在試驗Jquery的顯而易見的簡單性。我需要一個JQuery或Javascript函數(1)允許用戶從下拉框中選擇Q &類別,並(2)根據用戶的選擇告訴Jquery代碼選擇哪個XML文件。在選擇XML文件後如何處理是另一回事。Jquery - 根據下拉菜單選擇加載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 

     }); 
}) 

我已經嘗試了上述許多變化,但無濟於事。我有一種感覺,我正在做一些非常簡單的事情,確實是錯誤的。我會很感激任何提示或建議。

回答

0

您需要的功能selFile聲明拉昇var x

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

if語句刪除var聲明:

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"} 

})(); 
+0

傳奇隊友,謝謝你的時間。 – AndrewC

+0

不要忘記接受答案,如果它是正確的,所以其他用戶可以找到它有用的 – antyrat