在Html.BeginForm中传递不来自<input />的参数

时间:2015-06-02 21:04:18

标签: c# asp.net-mvc http-post html.beginform

我正在使用tags向我的name发送一些参数。一切都很好。但是,它仅适用于Html中的$( "#ctl00_cpMainBody_OptionCalc_Quantities option:selected" ).text() 标记。有没有办法发布其他标签的价值?例如Html.BeginForm("Details", "ControllerName", FormMethod.Post)或其他什么?所以在Controller的最后,我可以在<input>

中收到这些值

谢谢

2 个答案:

答案 0 :(得分:4)

不,你不能。只有inputselecttextarea控件值会发布到服务器。您可以在后台设置具有跨度值的隐藏输入控件,但不能指望跨度自动发布。

答案 1 :(得分:0)

如果你使用javascript,你可以。以下示例。

document.getElementById('submit').onclick = function(e) {
    e.preventDefault();

    var form = document.getElementById('myForm');

    var data = new FormData();
    // put whatever you want to put through data.append([name], [value])

    var xhr = new XMLHttpRequest();
    xhr.open("POST", form.action);
    xhr.send(data); 
};