如何在ASP.NET核心中将js变量传递给控制器

dwthyt8l  于 2022-11-19  发布在  .NET
关注(0)|答案(2)|浏览(109)

我在js代码中发送了一个id,我想把这个变量传递给我的控制器。有什么建议吗?
第一个
我尝试了不同的方法,但都没有成功。

vxqlmq5t

vxqlmq5t1#

我试了一下:
产品型号:

public class ReceiveModel
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string SomeKey { get; set; }
    }

查看方式:

<div class="row">
    <div class="col-md-4">
        <form id="form" asp-action="Create">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="Name" class="control-label"></label>
                <input asp-for="Name" class="form-control" />
                <span asp-validation-for="Name" class="text-danger"></span>
            </div>
            <div class="form-group">
                <input id="1" type="submit" value="Create" class="btn btn-primary" />
            </div>
            <div class="form-group">
                <input id="2" type="submit" value="Create" class="btn btn-primary" />
            </div>
            <div class="form-group">
                <input id="3" type="submit" value="Create" class="btn btn-primary" />
            </div>
        </form>
        
    </div>
</div>


<script src="~/lib/jquery/dist/jquery.min.js"></script>
<script>    
    $("input[type='submit']").click(function ()
    {
        var tempid = this.id
        var tmpInput = $("<input type='text' name='SomeKey' hidden/>");
        tmpInput.attr("value", tempid );
        var form = $("#form")
        form.append(tmpInput)
        form.submit()
    })
</script>

结果:

wztqucjr

wztqucjr2#

您可以查找API请求。如果您想将一个参数作为基元类型(字符串、整数等)发送,则可以在API调用中使用查询字符串。例如,假设您有一个如下所示的API端点:localhost:5000/api/YourController。您可以通过API get调用发送参数,如localhost:5000/api/YourController?yourParam=<param-value>。在本例中,您的API调用类型为GET
如果你想发送复杂的类型(如类、对象)到你的控制器,你可以查找POST API请求。
您可以在此documentation中找到更多详细信息。

相关问题