MVC Ajax.begin通知JavaScript参数
我有一个AJAX表单,其中url id需要来自JavaScriptMVC Ajax.begin通知JavaScript参数,javascript,jquery,ajax,asp.net-mvc,razor,Javascript,Jquery,Ajax,Asp.net Mvc,Razor,我有一个AJAX表单,其中url id需要来自JavaScript @using(Ajax.BeginForm("Add","Comments", new { ArticleID = 3 }, new AjaxOptions { UpdateTargetId="Comments"})) 其中应替换ArticleID=3,以便将ArticleID值设置为与被调用Javascript函数的结果相等。差不多 JS: function GetArticleID() { return 3;
@using(Ajax.BeginForm("Add","Comments", new { ArticleID = 3 }, new AjaxOptions { UpdateTargetId="Comments"}))
其中应替换ArticleID=3
,以便将ArticleID值设置为与被调用Javascript函数的结果相等。差不多
JS:
function GetArticleID()
{
return 3;
}
@using(Ajax.BeginForm("Add","Comments", new { ArticleID = GetArticleID() }, new AjaxOptions { UpdateTargetId="Comments"}))
public ActionResult Add(int ArticleID, Comment model)
{
}
剃须刀:
function GetArticleID()
{
return 3;
}
@using(Ajax.BeginForm("Add","Comments", new { ArticleID = GetArticleID() }, new AjaxOptions { UpdateTargetId="Comments"}))
public ActionResult Add(int ArticleID, Comment model)
{
}
控制器:
function GetArticleID()
{
return 3;
}
@using(Ajax.BeginForm("Add","Comments", new { ArticleID = GetArticleID() }, new AjaxOptions { UpdateTargetId="Comments"}))
public ActionResult Add(int ArticleID, Comment model)
{
}
如何使用JavaScript函数结果作为参数 使用(Ajax.BeginForm)的@行(
将由razor在服务器上执行。当时,razor对客户端浏览器中的javascript方法一无所知。因此,您不能在那里混合使用javascript函数
我更喜欢编写干净的自定义代码来完成ajax表单提交(而不是使用ajax.BeginForm
),因为它允许我以任何方式进行自定义
保持您的表单与正常表单一样
@using(Html.BeginForm("Add","Comments"))
{
<input type="hidden" name="ArticleId" id="ArticleId" value=""/>
<input name="CommentText" type="text" />
<input type="submit" id="saveCmntBtn" />
}
您的问题是什么?如何使用JavaScript函数结果作为BeginForm参数?将其添加到您的问题中,以便用户更好地理解它。