在我看来,我有一个像这样的隐藏字段:
@Html.HiddenFor(m => m.Url)
然后我有一个表单,我通过这样的Ajax调用发布数据:
<form id="formdata">
<input class="btn primary" type="submit" value="Submit" onclick="submitForm('@Url.RouteUrl("createAccount/"+ '@Html.HiddenFor(m => m.Url)'+ )'">
</form>
如何将隐藏表单中的网址传递到我的提交功能中。我不确定我是否必须使用双引号或单引号?或者这是可以实现的吗?
谢谢
答案 0 :(得分:1)
HtmlHelper.HiddenFor
用于创建具有指定给viewmodel binder的指定值的隐藏字段,而不是直接呈现其值。你需要的是使用Model.Url
属性将viewmodel属性传递给JS函数,如下所示:
<input class="btn primary" type="submit" value="Submit"
onclick="submitForm('@Url.RouteUrl("createAccount/" + Model.Url)')">
如果它返回包含查询字符串的编码网址,请使用Html.Raw()
,即Html.Raw(Model.Url)
。
注意:您可以使用AjaxHelper.BeginForm
通过AJAX提交表单,作为处理提交按钮click
事件&amp;的替代方法。将jQuery.ajax
与传递的网址一起使用。