【问题标题】:send ajax post request from partial view in asp.net core razor pages从 asp.net core razor 页面中的部分视图发送 ajax 发布请求
【发布时间】:2020-10-10 12:28:20
【问题描述】:

我正在尝试从部分视图发送 POST Ajax。 这是我的部分观点:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="../css/simple-sidebar.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
<link rel="stylesheet" href="~/css/simple-sidebar.css">

<div id="sidebar">
    <div class="toggle-btn" onclick="toggleSidebar()">
        <span></span>
        <span></span>
        <span></span>
    </div>
    <div id="links">
        <a href="" onclick='MainTabs()' id="tab1">tab1</a>

    </div>
</div>

<script type="text/javascript">

    function MainTabs() {
        console.log('first');

        $(document).ready(function () {
            $.ajax({
                url: "/Main/getddl",
            type: "POST",
            dataType: "json",
                success: function (response) {
                    console.log(Session["switch"]);
                console.log('ok');
            },
            failure: function (response) {
                console.log('error');
            }
            });
        });
    }
</script>

这是父 .cs 代码:

公共类 MainModel : PageModel {

    public void getddl()
    {
        HttpContext.Session.SetString("ddl", "ddl");
    }

}

我在控制台中打印了“第一个”,但随后立即出现错误,错误也不会保留并在几秒钟内消失。

POST https://localhost:33444/getddl 404

【问题讨论】:

标签: jquery ajax asp.net-core partial-views razor-pages


【解决方案1】:

我发现问题导致了这种行为。我有侧边栏,并且有一种方法可以激活它:

function toggleSidebar() {
        document.getElementById("sidebar").classList.toggle('active');
    }

由于这个侧边栏是活动类,它不知道任何关于主页的信息。 单击其中一项后,我尝试删除活动类,但尚未成功。

$(document).ready(function () {

        $('#MainTabs').click(function () {
            //e.preventDefault();
            //$('.sidebar a').removeClass('active');
            //$(this).addClass('active');
            var id = $(this).attr("id");
            $('#' + id).siblings().find(".active").removeClass("active");
            $('#' + id).addClass("active");
            localStorage.setItem("selectedolditem", id);
            var fullName = $('#texboxFullName').val();
            alert(id);
            $.ajax({
                type: 'GET',
                data: { fullName: fullName },
                url: '@Url.Page("Main", "Demo2")',
                success: function (result) {
                    $('#result2').html(result);
                }
            })
        });
    });

有什么帮助吗?

【讨论】:

    猜你喜欢
    • 2018-10-08
    • 2020-05-26
    • 2019-04-01
    • 2019-06-28
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 2021-11-16
    • 2019-06-10
    相关资源
    最近更新 更多