ASP.NET MVC按钮。单击“不使用javascript”

ASP.NET MVC按钮。单击“不使用javascript”,javascript,c#,asp.net-mvc,button,Javascript,C#,Asp.net Mvc,Button,我有一个表单,需要用户输入两个按钮:一个按钮用于提交表单值,另一个按钮用于加载部分视图。不过,我不确定我的方法是否正确。submit按钮工作正常,但是单击带有GenerateBtnid的按钮不会触发加载局部视图的displayproval()函数。有什么解决方法或更好的方法吗 @using (Html.BeginForm()) { @Html.AntiForgeryToken() <div class="form-horizontal"> <h4>Proposa

我有一个表单,需要用户输入两个按钮:一个按钮用于提交表单值,另一个按钮用于加载部分视图。不过,我不确定我的方法是否正确。
submit
按钮工作正常,但是单击带有
GenerateBtn
id的按钮不会触发加载
局部视图的
displayproval()
函数。有什么解决方法或更好的方法吗

@using (Html.BeginForm())
{
@Html.AntiForgeryToken()

<div class="form-horizontal">
    <h4>Proposal</h4>
    <hr />
    @Html.ValidationSummary("", new { @class = "text-danger" })
    @Html.HiddenFor(model => model.id)

    <div class="form-group">
        @Html.LabelFor(model => model.item, htmlAttributes: new { @class = "control-label col-md-2" })
        <div class="col-md-10">
            @Html.EditorFor(model => model.item, new { htmlAttributes = new { @class = "form-control" } })
        </div>
    </div>

    <h2>Generated Questions</h2>
    <div id="ProposalTable"></div>

    <div class="form-group">
        <div class="col-md-offset-2 col-md-10">
            <input type="submit" value="Save" class="btn btn-default" />
        </div>
    </div>
</div>

<div class="form-group">
    <div class="col-md-offset-2 col-md-10">
        <input type="button" value="Generate" class="btn btn-default" id="GenerateBtn" />
    </div>
</div>
}

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")

<script>
    document.getElementById("GenerateBtn").onclick = function () { DisplayProposal() };
    function DisplayProposal() {
        //Loads Partial View to <div>ProposalTable</div>
        $('ProposalTable').load('@Url.Action("LoadStuff", "Proposals")');
    }

</script>
@使用(Html.BeginForm())
{
@Html.AntiForgeryToken()
提议

@Html.ValidationSummary(“,new{@class=“text danger”}) @Html.HiddenFor(model=>model.id) @LabelFor(model=>model.item,htmlAttributes:new{@class=“controllabel col-md-2”}) @EditorFor(model=>model.item,new{htmlAttributes=new{@class=“form control”}}) 生成的问题 } @节脚本{ @Scripts.Render(“~/bundles/jqueryval”) document.getElementById(“GenerateBtn”).onclick=function(){DisplayProposal()}; 功能建议(){ //将部分视图加载到ProposableTable $('ProposalTable').load('@Url.Action(“LoadStuff”,“propositions”)); }

}不使用jquery的任何原因:

$(document).ready(function(){
  $("#GenerateBtn").click(function(){
       DisplayProposal();
   });
});

中添加
ClientIDMode=“Static”
尝试将document.getElementById行放在函数定义之后谢谢@MikeS它工作得非常好!有什么理由可以用这个代替上面的代码吗?我不知道。document.getElementById(“GenerateBtn”)是否返回任何内容?