中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何XML文檔添加新 ”records”

發布時間:2021-01-21 14:51:48 來源:億速云 閱讀:164 作者:小新 欄目:編程語言

這篇文章主要介紹了如何XML文檔添加新 ”records”,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

如何XML文檔添加新 ”records”

AddContact.html:

<html> 
  <head> 
   <title> Contact Information </title> 
  </head> 
  <body> 
   <form action="processAdd.asp" method="post">  
   <h4>Enter your contact information</h4>  
   First Name:  
   <input type="text" id="firstName" name="firstName"><br> Last Name:  
   <input type="text" id="lastName" name="lastName"><br> Address #1:  
   <input type="text" id="address1" name="address1"><br> Address #2:  
   <input type="text" id="address2" name="address2"><br> Phone Number:  
   <input type="text" id="phone" name="phone"><br> E-Mail:  
   <input type="text" id="email" name="email"><br>  
   <input type="submit" id="btnSub" name="btnSub" value="Submit"><br>  
   </form> 
  </body> 
  </html>


  我們設置此HTML表單是來處理ADD。ASP的。這里的ASP 頁面具有檢測XML.文件及ROLODEX.XML是否存在的功能。如果它們確實存在,ASP則會在文件上附加新的條目,如果文件不存在,則需要創建。  

  Process Add.asp:

<% 
   '-------------------------------------------------------------------- 
   'The "addNewContacttoXML" Function accepts two parameters. 
   'strXMLFilePath - The physical path where the XML file will be saved. 
   'strFileName - The name of the XML file that will be saved. 
   '-------------------------------------------------------------------- 
   Function addNewContacttoXML(strXMLFilePath, strFileName)  
    'Declare local variables.  
    Dim objDom  
    Dim objRoot  
    Dim objRecord  
    Dim objField 
    Dim objFieldValue  
    Dim objattID  
    Dim objattTabOrder  
    Dim objPI  
    Dim blnFileExists  
    Dim x  
    'Instantiate the Microsoft XMLDOM.  
    Set objDom = server.CreateObject("Microsoft.XMLDOM")  
    objDom.preserveWhiteSpace = True 
    'Call the Load Method of the XMLDOM Object. The Load ethod has a  
    'boolean return value indicating whether or not the file could be  
    'loaded. If the file exists and loads it will return true, otherwise, 
    'it will return false. 
    blnFileExists = objDom.Load(strXMLFilePath & "\" & strFileName)  
    'Test to see if the file loaded successfully.  
    If blnFileExists = True Then  
     'If the file loaded set the objRoot Object equal to the root element  
     'of the XML document.  
     Set objRoot = objDom.documentElement Else  
     'Create your root element and append it to the XML document.  
     Set objRoot = objDom.createElement("rolodex")  
     objDom.appendChild objRoot 
    End If  
     'Create the new container element for the new record.  
     Set objRecord = objDom.createElement("contact")  
     objRoot.appendChild objRecord  
     'Iterate through the Form Collection of the Request Object. 
     For x = 1 To Request.Form.Count  
      'Check to see if "btn" is in the name of the form element. If it is,  
      'then it is a button and we do not want to add it to the XML  
      'document".  
      If instr(1,Request.Form.Key(x),"btn") = 0 Then  
       'Create an element, "field".  
       Set objField = objDom.createElement("field")  
       'Create an attribute, "id".  
       Set objattID = objDom.createAttribute("id")  
       'Set the value of the id attribute equal the the name of the current  
       'form field.  
       objattID.Text = Request.Form.Key(x)  
       'The setAttributeNode method will append the id attribute to the  
       'field element. objField.setAttributeNode objattID  
       'Create another attribute, "taborder". This just orders the  
       'elements.  
       Set objattTabOrder = objDom.createAttribute("taborder")  
        
       'Set the value of the taborder attribute.  
       objattTabOrder.Text = x  
       'Append the taborder attribute to the field element.  
       'objField.setAttributeNode objattTabOrder  
       'Create a new element, "field_value". 
       Set objFieldValue = objDom.createElement("field_value")  
       'Set the value of the field_value element equal to the value of the  
       'current field in the Form Collection.  
       objFieldValue.Text = Request.Form(x)  
       'Append the field element as a child of the new record container  
       'element, contact. objRecord.appendChild objField  
       'Append the field_value element as a child of the field element. 
       objField.appendChild objFieldValue  
      End If  
     Next  
     'Check once again to see if the file loaded successfully. If it did  
     'not, that means we are creating a new document and need to be sure to  
     'insert the XML processing instruction.  
     If blnFileExists = False then  
      'Create the xml processing instruction.  
      Set objPI = objDom.createProcessingInstruction("xml", "version='1.0'")  
      'Append the processing instruction to the XML document.  
      objDom.insertBefore objPI, objDom.childNodes(0)  
     End If  
     'Save the XML document. 
     objDom.save strXMLFilePath & "\" & strFileName  
     'Release all of your object references.  
     Set objDom = Nothing  
     Set objRoot = Nothing  
     Set objRecord = Nothing  
     Set objField = Nothing  
     Set objFieldValue = Nothing  
     Set objattID = Nothing  
     Set objattTabOrder = Nothing  
     Set objPI = NothingEnd  
    Function 
    'Do not break on an error. 
    On Error Resume Next 
    'Call the addNewContacttoXML function, passing in the physical path to 
    'save the file to and the name that you wish to use for the file. 
    addNewContacttoXML "c:","rolodex.xml" 
    'Test to see if an error occurred, if so, let the user know. 
    'Otherwise, tell the user that the operation was successful. 
    If err.number <> 0 then  
     Response.write("Errors occurred while saving your form submission.") 
    Else  
     Response.write("Your form submission has been saved.") 
    End If 
   %>


如果你已經讀過關于"將HTML 表單數據保存至XML格式"的文章,你會注意到附加到將HTML數據擴展到XML文件的代碼與HTML數據擴展到新文檔的代碼基本上是一致的。但是這里還是有兩個主要的不同點:

 'Call the Load Method of the XMLDOM Object. The Load Method has a  
   'boolean return value indicating whether or not the file could be  
   'loaded. If the file exists and loads it will return true, otherwise,  
   'it will return false.  
   blnFileExists = objDom.Load(strXMLFilePath & "\" & strFileName)  
    
   'Test to see if the file loaded successfully.  
   If blnFileExists = True Then  
    'If the file loaded set the objRoot Object equal to the root element  
    'of the XML document.  
    Set objRoot = objDom.documentElement 
   Else  
    'Create your root element and append it to the XML document.  
    Set objRoot = objDom.createElement("contact")  
    objDom.appendChild objRoot  
   End If

  本節的代碼來自addNewContacttoXML 功能。因為我們不可能每次都新建一個文件,所以我們改為保存CONTACT。如果能夠LOAD此文件呢,我們則獲得了這個XML文檔的根元素;如果不能夠呢,那么我們就假設它不存在并創建一個新的要元素并將它附加到XML文檔上。

  另外一個主要區別在于:當我們對文件進行二次檢測,是否成功的LOAD,這樣我們可以決定是否需要加上 一條處理指令。如果文件存在,我們就不需要加上這條指令。但是,如果創建了一個新的文件,那么則一定得加上這條處理指令。


'Check once again to see if the file loaded successfully. If it did  
  'not, that means we are creating a new document and need to be sure to  
  'insert the XML processing instruction.  
  If blnFileExists = False then  
   'Create the xml processing instruction.  
   Set objPI = objDom.createProcessingInstruction("xml", "version='1.0'")  
   'Append the processing instruction to the XML document.  
   objDom.insertBefore objPI, objDom.childNodes(0)  
  End If

  除開以上兩點不同之處外,你可以發現 保存數據至新文件的代碼實際上是與 附加新record至存在文件的代碼是一樣的。我們創建一個新的element, contact CONTAINER,以便能容下每個新添的RECORD。代碼將會在Form Collection of the Request Objec中不斷重復以創建適合的XML節點并將這些節點值設置得與當前Form Field.一樣。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何XML文檔添加新 ”records””這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天气| 泽州县| 利川市| 太和县| 天全县| 合作市| 灵寿县| 晋宁县| 三台县| 湖北省| 克东县| 云阳县| 南昌市| 八宿县| 德兴市| 永登县| 屏边| 建德市| 江达县| 眉山市| 苏尼特右旗| 绥阳县| 大田县| 梧州市| 庆阳市| 文成县| 即墨市| 上饶县| 淮阳县| 广德县| 静海县| 肥乡县| 泸州市| 郧西县| 兴和县| 观塘区| 博罗县| 东至县| 石嘴山市| 仁化县| 库车县|