繁体   English   中英

从XSD创建Web表单,然后输出xml表单

[英]create web form from XSD and then output xml form

我正在创建一个工具,允许某人输入食谱,然后将其保存为XML文件,我创建了我的XSD,但我想知道如何在我的网页上创建一个表单,允许用户输入他们的食谱和坚持架构。 我一直在研究Ajax和Jquery,但我真的很困惑。 任何帮助将非常感激!

缺口

您的信息有点小。 所以,如果我说明了我明显的抱怨。 基本方法是创建一个实现所有数据元素的页面。 使用javascript / Jquery验证所需的元素。 将页面发送到服务器后,读取所有元素并创建XML文档。

您没有指定服务器处理语言,但此方法可以与任何已知语言一起使用,例如PHP,C#,VB.NET,Ruby,Perl。

根据您的选择,创建和维护页面的模板代码的工作量越来越少。 您还可以使用XSLT从XSD生成HTML页面。 读取数据也可以使用XSLT完成。 如果您使用Smalltalk Web应用程序框架Seaside,页面是从代码生成的,因此只有一个地方可以维护您的应用程序。 但这并没有被广泛使用,因此可能不是一种选择。 大多数其他语言使用页面模板。

您可以通过以下代码执行此操作:以下代码检查文件是否不存在,然后创建xml,如果没有,则加载创建的xml文件。

    string file = MapPath("~/Recepies.xml");

    XDocument doc;

    //Verify whether a file is exists or not
    if (!System.IO.File.Exists(file))
    {
        doc = new XDocument(new XDeclaration("1.0", "UTF-8", "yes"),
            new System.Xml.Linq.XElement("Recepies"));
    }
    else
    {
        doc = XDocument.Load(file);
    }

    XElement ele = new XElement("Recepie", txtRecepie.Text.Trim());
    doc.Root.Add(ele);
    doc.Save(file);

    using (StreamWriter writer = new StreamWriter(Response.OutputStream, new UTF8Encoding(false)))
    {
        doc.Save(writer);
        Response.ContentType = "text/xml";
        Response.AddHeader("Content-disposition", "attachment;filename=file.xml");
        Response.Flush();
        Response.End();
    }

试试http://github.com/davidmoten/xsd-forms这个工具。 它基于xsd生成HTML和JavaScript,并提交符合xsd的XML。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM