2014-11-14 44 views
0

好吧,所以我幾乎是Javascript的noob,完全不知道XML,所以很抱歉,如果這是一個愚蠢的問題。在XML中使用HTML輸入值

我有一個JavaScript文件(由打印機公司Dymo創建),將從瀏覽器打印到標籤打印機。我可以手動更改打印的信息。不過,我希望它可以打印由用戶填充的HTML表單輸入字段提供的任何信息。

問題是打印的數據來自Javascript中的XML。

我想知道的是,我可以如何將用戶輸入的數據放入表單中,然後將其放入XML中,以便我可以打印該數據。我意識到這是一個半廣泛的問題,並且可能很困難。

的形式爲:

<form name="myform" onsubmit="return false"> 
    QR Data Insertion: <input type="text" name="mytextfield" onchange="checkForm()" autofocus> 
</form> 

JavaScript的(幾乎是不必要的):

<script type="text/javascript" language="JavaScript"> 

function checkForm() { 
    var field1 = document.forms['myform'].elements['mytextfield'].value; 
    alert(field1); 
}  

</script> 

不知道這將完全是有幫助的,但下面是XML的一個片段:

<StyledText>\ 
    <Element>\ 
     <String>HERE IS WHERE I WANT THE FORM DATA TO GO</String>\ 
     <Attributes>\ 
      <Font Family="Arial" Size="12" Bold="False" Italic="False" Underline="False" Strikeout="False" />\ 
      <ForeColor Alpha="255" Red="0" Green="0" Blue="0" />\ 
     </Attributes>\ 
    </Element>\ 
</StyledText>\ 
+0

這可能有很大的幫助http://stackoverflow.com/questions/4065365/libraries-to-write-xml-with-javascript 乾杯 – 2014-11-14 21:21:09

回答

0

你可以在你的javascript函數中使用DOM操作,如下所示:

// Load the XML document 
var xmlDoc = loadXMLDoc('yourXML.xml'); 
// Find the first String element 
var x = xmlDoc.getElementsByTagName('String')[0]; 
// Change the content of that element 
x.textContent = field1; 

要加載您可以使用此方法http://www.w3schools.com/dom/dom_loadxmldoc.asp, 文檔,但我不知道所有的瀏覽器是否支持。

希望這會有所幫助!

+0

老實說,我不知道DOM操作是什麼。更不用說XML文件包含在JS文件中,這使事情變得複雜。不過,我一定會考慮這一點。謝謝 – 2014-11-14 21:38:55

+0

請查看http://www.w3schools.com/xml/xml_parser.asp。如果您將XML作爲字符串或加載XML,則始終可以像這樣對其進行修改。 – 2014-11-15 09:42:17