Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# HTML表单提交,.Net,将字段另存为XML_C#_Jquery_Html_Asp.net - Fatal编程技术网

C# HTML表单提交,.Net,将字段另存为XML

C# HTML表单提交,.Net,将字段另存为XML,c#,jquery,html,asp.net,C#,Jquery,Html,Asp.net,我们有一个带有表单的HTML页面。 我们正在使用jQueryAjax从XML文件预填充表单 我们希望表单在提交时通过default.xml文件保存。我们很可能会使用ASP.Net作为服务器端 我们的问题是,为了将信息保存在表单中并保存在XML文件上,ASP.Net/C会是什么样子 提前谢谢 编辑 这是我们的例子: <option id="timeBlockOne"> <select>12:00</select> <select>1:00&

我们有一个带有表单的HTML页面。 我们正在使用jQueryAjax从XML文件预填充表单

我们希望表单在提交时通过default.xml文件保存。我们很可能会使用ASP.Net作为服务器端

我们的问题是,为了将信息保存在表单中并保存在XML文件上,ASP.Net/C会是什么样子

提前谢谢

编辑

这是我们的例子:

 <option id="timeBlockOne">
  <select>12:00</select>
  <select>1:00</select>
 </option>

<option id="titleBlockOne">
<select>Title One</select>
<select>Title Two</select>
</option>

 <option id="titleBlockTwo">
 <select>Title three</select>
 <select>Title Four</select>
 </option>

 <option id="timeBlockTwo">
 <select>12:00</select>
 <select>1:00</select>
 </option>

 ...etc up to 10 blocks.

  <button action="Post">Submit</button>

12:00
1:00
标题一
标题二
标题三
标题四
12:00
1:00
…等等,最多10个街区。
提交
所需的XML输出

 <main>
    <itemOne>
      <timeBlockOneValue>Value selected from form</timeBlockOneValue>
      <titleBlockOneValue>Value Selected from form</titleBlockOneValue>
    </itemOne>
    <itemTwo>
      <timeBlockTwoValue>Value selected from form</timeBlockTwoValue>
      <titleBlockTwoValue>Value Selected from form</titleBlockTwoValue>
    </itemTwo>
     ...etc
 </main>

从表单中选择的值
从表单中选择的值
从表单中选择的值
从表单中选择的值
等

希望这有助于解决我的问题。

好吧,这里有一个可能的方法让你走上正确的轨道,如果不清楚,请告诉我

JavaScript:

function GetXMLButton() {
    var xml = "<main>";
    var i = 1;
    // Loop for each OPTION element in the myForm div
    $("#myform select").each(function() {
        // Get value of selected option.
        var selectedValue = $(this).val();
        xml = xml + "<item_" + i + "><" + this.id + ">" + selectedValue + "</" + this.id + "></item_" + i + ">";

        i++;
    });

    xml = xml + "</main>";

    // Call C# WebMethod to save into xml file
    PageMethods.SaveXMLFile(xml); 
}
C#代码隐藏: 您需要参考以下内容:

using System.Web.Services;
然后添加以下方法,并确保将
[WebMethod]
放在方法声明之前:

[WebMethod]
public static void SaveXMLFile(string formXMLData)   
{
    // Put your code to convert formXMLData string to an XML File and save/upload on/to server
}

太宽了。有几个问题/文章围绕着-你可能想看看他们,让你的问题更具体。。。包括关于MSDN的文章。如果您的表单由服务器端处理,那么所有元素都应该具有runat=“server”,然后您应该能够遍历所有表单组件并从每个组件获取用户输入,然后在检查每个元素时填充xml文件。如果没有,可以使用jquery遍历所有表单元素,完成后可以从JavaScript调用一个C#WebMethod并传递一个包含XML数据的字符串,然后可以在服务器端持久化XML文件。如果你需要帮助,请告诉我。@Lucidgold。我知道runat=“server”需要,并且该页面应该是一个web表单。我只从JS调用过几次C#webmethods。这就是问题所在。我们希望从HTML表单中获取每个表单的值,然后将表单提交保存到XML文件中。非常感谢您的帮助。代码示例会更好。如果可能的话,请检查我的答案并告诉我是否有帮助。
[WebMethod]
public static void SaveXMLFile(string formXMLData)   
{
    // Put your code to convert formXMLData string to an XML File and save/upload on/to server
}