所以我有一个收集一些数据的表单
我使用jQuery ui lib来获取表单。它是从这个html构建的:
<div id="dialog-form" title="form name">
<form>
<fieldset>
<label for="opis_naziv">Kratak opis: </label>
<input type="text" name="opis" id="opis_naziv" value="" class="text ui-widget-content ui-corner-all" /><br />
<div id='jqxDDHitnost'></div>
<label for="opis_sadrzaj">Puni opis: </label><br />
<textarea cols="76" name="opis_sadrzaj" id="opis_sadrzaj" rows="10" class="textarea ui-widget-content ui-corner-all" ></textarea><br />
<label for="dodatak">Dodaj datoteku (do 4MB): </label>
<input type="file" name="dodatak" id="dodatak" value="" class="file ui-widget-content ui-corner-all" /><br />
</fieldset>
</form>
</div>
和这个javascript来初始化它:
$("#dialog-form").dialog({
autoOpen: false,
height: 600,
width: 700,
modal: true,
buttons: {
"Kreiraj": function () {
//code needed
},
"Odustani": function () {
$(this).dialog("close");
}
}
});
我有c#代码服务器端,我想知道如何收集表单中的所有数据并将其发送到服务器。
有问题的是文件上传。其余的我知道如何发送但不确定该文件。
答案 0 :(得分:1)
我建议在按钮点击回调功能上,您可以执行以下步骤将数据发送到服务器:
准备一个具有表单的name-value / id-value对的XML字符串 控制(例如“&lt; field id ='opis_naziv'value =”+ $('#opis_naziv')。val()+“/&gt;”)。
将XML字符串存储在隐藏控件(文本框等)中 runat =“server”属性
使用runat =“server”属性触发按钮控件的单击,该属性将控件传递给按钮的服务器单击事件,您可以从上面的控件访问XML字符串,解析并使用值。
我个人建议您在单击按钮时调用WebMethod来执行服务器端操作。
答案 1 :(得分:0)
最后,我使用了jQuery Form Plugin,这解决了我所有的问题。谢谢Shant告诉我runat="server"
选项。