0

我正在使用 jQuery ajax 从 javascript 向 eXist db 发送 REST POST 请求。在 eXist db 中,我创建了一个名为“test”的集合,现在我从 html 页面获取输入并在通过 POST 请求发送 XML 之后将它们转换为 XML。

这是我的示例代码

<HTML>
<body> <script type="text/javascript" src="../jquery-1.7.2.js"></script>
<script type="text/javascript" >

function OnSubmitForm()
{
    var Ip = document.myForm.ip.value;
    var Type = document.myForm.type.value;


if(!((Ip=="" )|| (Ip==null)))
{    
 var re = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;


            var stringText="<?xml version='1.0' encoding='utf-8'?> ";       
            stringText+="\n<Configuration>\n<IP>"+Ip+"</IP>";

            stringText+="\n<Type>"+Type+"</Type>\n</Configuration>";

            var url = "http://localhost/exist/rest//db/test/";
            var ajax = new XMLHttpRequest();
            jQuery.support.cors = true;
            $.ajax({
                url: url ,
                async: false,
                type: 'POST',
                contentType: "application/xml",
                username: 'admin',
                password:'' ,
                data: stringText,
                success: function(msg) 
                {
                  alert(msg);
                },
                error: function(request, msg, error) 
                {
                 alert(error);
                }
           });
    return true;
   }
};

</script>
<form name="myForm" onsubmit="return OnSubmitForm();">
<table cellspacing="2" cellpadding="2" border="1">
 <tr>
  <td align="right">IP or IP's</td>
  <td><input type="text" name="ip" /></td>
 </tr>

 <tr>
  <td align="right">Type</td>
  <td><input type="text" name="type" /></td>
 </tr>
 <tr>
  <td align="right"></td>
  <td><input type="submit" value="Submit" /></td>
 </tr>
 </table>
</form>
</body>
</HTML>

但是,如果我提交表单,它会给出错误,例如

“未知+XML+根+元素%3A+配置”

这是什么错误?我怎样才能将这个xml存储在db中?请回答。提前致谢。

4

1 回答 1

1

你失踪了 > 在

stringText+="\n<Type>"+Type+"</Type\n</Configuration>";
于 2012-05-21T10:52:24.780 回答