How to save data from dropdownlist to XM fileL by JavaScript

Discussion in 'JavaScript' started by natzjordaan, Jan 4, 2012.

  1. #1
    Hey guys

    I need a small help. I am new to Javascript. I want to save data from dropdownlist to XML file. Save function is working but I dont know how to load data list from dropdown to xml file. I can do with input element but dont know how to work with dropdown element. How to do this?

    Look at my codes below:

    HTML markup (index.html):

    FOCUS ON RED
    <body>
    <form name="reg" action="index.html" method="get">

    Name:
    <input type="text" name="name_input" />
    Pass:
    <input type="text" name="pass_input" />
    <select id="language">
    <option name="select_afrikaans">Afrikaans</option>
    <option name="select_english">English</option>
    </select>

    <br />
    <input type="button" value="SAVE" onclick="javascript:eek:k_click();" />
    </form>
    </body>

    Javascript:

    function ok_click() {
    var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
    xmlDoc.async = false;
    xmlDoc.load("data.xml");
    if (xmlDoc.readyState == 4 && xmlDoc.parseError.errorCode == 0) {
    var root = xmlDoc.documentElement;
    var _input_name = xmlDoc.createTextNode(document.reg.name_input.value);
    var _input_pass = xmlDoc.createTextNode(document.reg.pass_input.value);
    var _select_afrikaans = xmlDoc.createTextNode(document.reg.select_afrikaans.value);
    var _select_english = xmlDoc.createTextNode(document.reg.select_english.value);

    var input_name = xmlDoc.createNode(1, "USER", "");
    var input_pass = xmlDoc.createNode(1, "PASS", "");
    var input_select = xmlDoc.createNode(1, "LANGUAGE", "");

    input_name.appendChild(_input_name);
    input_pass.appendChild(_input_pass);
    select_afrikaans.appendChild(_select_afrikaans);
    select_english.appendChild(_select_english);


    var cust = xmlDoc.createNode(1, "CUST", "");
    cust.appendChild(input_name);
    cust.appendChild(input_pass);
    cust.appendChild(select_afrikaans);
    cust.appendChild(select_english);

    root.appendChild(cust);

    SaveXML(xmlDoc, "data.xml");
    alert("Save!");
    }
    }
    // It is working fine
    function SaveXML(xmlDoc, filename) {
    var outputXML = new String(xmlDoc.xml);
    var mfObj = new ActiveXObject("Scripting.FileSystemObject");
    var absPath = getPath();
    var file = mfObj.CreateTextFile(absPath + filename, true);
    file.Write(outputXML);
    file.Close();
    }

    //it is working fine
    function getPath() {
    var path = document.location;
    var str = new String(path);
    var end = str.lastIndexOf("/");
    var absolutePath = str.substring(8, end) + "/";
    absolutePath = absolutePath.replace(/ /g, " ");
    return absolutePath;
    }

    XML File:
    <?xml version="1.0"?>
    <DATA>
    <CUST>
    <USER>natalie</USER>
    <PASS>80</PASS>
    </CUST>

    ........ here should display data from dropdown list.....how?
    </DATA>

    Your help would much appreciated. Thank you very much :)

    Hope i will get a quick response!

    Regards
    Natz
     
    natzjordaan, Jan 4, 2012 IP
  2. ScottAN

    ScottAN Peon

    Messages:
    46
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #2
    Yes, you CAN use javascript to create and export an XML file, but why would you want to? My suggestion would be to just give the data to a PHP script and let PHP do all of the magic with their XML extensions and support.

    Are you familiar with PHP?
     
    ScottAN, Jan 5, 2012 IP