部分视图的模态窗口(ASP.NET MVC)

时间:2017-04-03 04:47:32

标签: c# jquery asp.net asp.net-mvc asp.net-mvc-4

我的视图中有模态窗口,按钮显示。

模态窗口的视图是部分视图

  

以下是部分视图的代码

<script src="~/Scripts/jquery-3.1.1.js"></script>
<script src="~/Scripts/jquery-ui-1.12.1.js"></script>
<div>
    <div class="form-group" style="text-align:center;padding-bottom: 20px; padding-top: 10px;">
        <input type="text" class="form-control" id="question", placeholder="Вопрос" />
    </div>
    <div class="form-group" style="text-align:center;padding-bottom: 20px; padding-top: 10px;">
        <input type="text" class="form-control" id="answer" , placeholder="Время на ответ" />
    </div>
    <div class="form-group" style="text-align:center;padding-bottom: 20px; padding-top: 10px;">
        <input type="text" class="form-control" id="prepare" , placeholder="Время на подготовку" />
    </div>
    <div class="form-group" style="text-align:center;padding-bottom: 20px; padding-top: 10px;">
        <input type="text" class="form-control" id="retries" , placeholder="Попытки" />
    </div>
    <div class="form-group" style="text-align:center">
        <input type="button" id="save_quest" value="Создать" class="btn btn-default" style="margin-right: 40px;" />
    </div>
</div>
<script>
    $(document).ready(function () {
        $('#save_quest').click(function () {
            save();
        });
    });
    function save() {
        $.ajax({
            type: 'Post',
            dataType: 'Json',
            data: {
                Question_new: $('#question').val(),
                Answer: $('#answer').val(),
                Preparing: $('#prepare').val(),
                Retries: $('#retries').val(),
            },
            url: '@Url.Action("CreateNewQuestion", "Questions")',
            success: function (da) {
                if (da.Result === "Success") {
                    window.location.href = da.RedirectUrl;
                } else {
                    alert('Error' + da.Message);
                }
            },
            error: function (da) {
                alert('Error');
            }
        });
    }
</script>

我需要填写数据并在保存按钮上写表,所以在Controller上我有这个代码

[HttpPost]
public ActionResult CreateNewQuestion(string Question_new, string Answer, string Preparing, string Retries)
{
    Question quest = new Question
    {
        question = Question_new,
        TimeForAnswer = Answer,
        TimeForReady = Preparing,
        Retries = Retries,
    };
    db.Questions.Add(quest);
    db.SaveChanges();

    return Json(new { Result = "Success", Message = "Saved Successfully"});
}

但是当我点击保存按钮时,我收到错误。

  

参数字典包含方法'System.Web.Mvc.ActionResult索引(System.String,System.String,System.String,System)的非可空类型'System.Int32'的参数'id'的空条目'SmartSolutions.Controllers.QuestionsController'中的.String,System.String,System.String,System.String,System.String,System.String,System.String,Int32)'。可选参数必须是引用类型,可空类型,或者声明为可选参数。   参数名称:参数

当我在Post方法上设置断点时,它不会命中。

为什么这样呢?它必须在我运行Post方法

时生成id

0 个答案:

没有答案