【发布时间】:2013-05-20 00:09:28
【问题描述】:
我正在使用 C# 和 SQL Server 2005 开发一个 ASP .Net MVC 3 应用程序。
在一个视图中,我有一个按钮,我在其中添加了一个 JQuery 脚本。
此按钮的目的是在列表中保存一些值。
按钮工作完美的问题,但是当我添加脚本时,情况发生了变化,按钮不起作用并变成静态(死)。
这是视图中的代码:
<div>
<input type="submit" value="Enregistrer" id="btnSave" />
</div>
<script type="text/javascript">
$(function () {
$('#btnSave').click(function () {
$('#poste option:selected').remove();
return false;
});
});
</script>
这是控制器中方法保存的代码:
[HttpPost]
public ActionResult Save(FlowViewModel model)
{
Console.WriteLine("" + model.Nbr_Passage);
if (ModelState.IsValid)
{
Gamme G = new Gamme();
G.ID_Gamme = model.SelectedProfile_Ga;
G.ID_Poste = model.SelectedPoste;
//G.Last_Posts = model.PostePrecedentSelected;
G.Next_Posts = model.PosteSuivantSelected;
G.Nbr_Passage = int.Parse(model.Nbr_Passage);
G.Position = int.Parse(model.Position);
((List<Gamme>)System.Web.HttpContext.Current.Session["GammeList"]).Add(G);
var list = ((List<Gamme>)System.Web.HttpContext.Current.Session["GammeList"]);
}
return RedirectToAction("Index");
}
【问题讨论】:
-
您从处理程序返回 false,这意味着您的按钮不会提交表单。
-
谢谢,没有错误,脚本的实用性就消失了。事实上,当我删除它时,页面会自行重新加载,并且下拉列表的项目不会被删除(这是你看到的函数的目的)。
-
如果您希望在执行此类操作时运行服务器端代码,则需要 AJAX,而不是提交表单
-
@BenjaminGruenbaum 我是初学者,我不知道我应该使用什么,最后我被问到一个关于如何在单击按钮时从下拉列表中删除项目的问题,他们给了我脚本。但是当我使用时,我发现按钮不再提交。因此,如果他们是其他解决方案,例如使用 AJAX,请帮助我,谢谢
标签: c# javascript visual-studio-2010 asp.net-mvc-3