2

我有一个具有形式的剃刀视图。在表单中有一个名为上传的按钮。上传按钮发布到一个运行良好的操作方法。

我想添加一个模式框确认,当他们点击上传按钮时会出现,现在在模式框中我想要两个按钮。一个会说“Normal Parsing”,另一个会说“Buffer Parsing”。一旦他们按下对话框中的任一按钮,表单将提交给操作方法,并且在操作方法中我想查看他们按下了哪个对话框按钮,“正常解析”或“缓冲区解析”。

这就是我目前所拥有的对话框,我只需要看看控制器将如何获得按下按钮的值。多谢你们!!

function getParsingRoute(){
  var buttonPressed;
    .dialog({
                modal: true,
                width: 600,
                title: 'Parsing Values Confirmation',
                buttons: {
                    "Normal Parsing": function () {
                        buttonPressed = "Normal";
                    },
                    "Buffer Parsing": function () {
                        buttonPressed = "Buffer
                    }
                }
            })
}

  @using (Html.BeginForm("Create", "RunLogEntry", FormMethod.Post, new { id = "form", enctype = "multipart/form-data" }))
    {

    <button name="submit" class="art-button" type="submit" value="Upload" onclick="getParsingRoute()" style="width: 100px">Upload</button>
}
4

2 回答 2

2

@Barmar评论启发的解决方案:

function getParsingRoute(e){
e.stopPropagation();
    .dialog({
        modal: true,
        width: 600,
        title: 'Parsing Values Confirmation',
        buttons: {
            "Normal Parsing": function () {
                $("#hiddenInput").val("Normal Parsing");
            },
            "Buffer Parsing": function () {
                $("#hiddenInput").val("Buffer Parsing");
            }
        }
    })
$("#form").submit();
}

 @using (Html.BeginForm("Create", "RunLogEntry", FormMethod.Post, new { id = "form", enctype = "multipart/form-data" }))
    {
    <input name="inputName" type="hidden" id="hiddenInput" value="" />
    <button name="submit" class="art-button" type="submit" value="Upload"  onclick="getParsingRoute()" style="width: 100px">Upload</button>
}
于 2013-02-21T00:13:05.613 回答
0

尝试以下方法:

function getParsingRoute(){
  var buttonPressed;
    .dialog({
        modal: true,
        width: 600,
        title: 'Parsing Values Confirmation',
        buttons: {
            "Normal Parsing": function () {
                 $.ajax({
                    url: "http://example.com",
                    type: "POST",
                    data: contactForm.serialize() + "&buttonPresed=Normal Parsing" 
                }).done(function (data) {
                    //done
                })
            },
            "Buffer Parsing": function () {
                $.ajax({
                    url: "http://example.com",
                    type: "POST",
                    data: contactForm.serialize() + "&buttonPresed=Buffer Parsing" 
                }).done(function (data) {
                    //done
                })
            }
        }
    })
}

此代码仅向您展示如何做到这一点。

于 2013-02-21T00:01:53.717 回答