Asp.net mvc 我无法在控制器中调用JQuery生成的cookie的值

Asp.net mvc 我无法在控制器中调用JQuery生成的cookie的值,asp.net-mvc,jquery,cookies,Asp.net Mvc,Jquery,Cookies,我创建了一个cookie,用于保存复选框的最后更改状态。cookie是有效的,我已经通过在警报框中传递所述cookie的值证明了这一点。cookie还保存站点上复选框的状态。我需要将cookie的值或当前复选框的值传递给控制器,以便相应地修改JQuery数据表。感谢您的帮助 以下是我的查看脚本: $(function () { var oTable = $('#myIssuesTable').dataTable({ "bProcessing":

我创建了一个cookie,用于保存复选框的最后更改状态。cookie是有效的,我已经通过在警报框中传递所述cookie的值证明了这一点。cookie还保存站点上复选框的状态。我需要将cookie的值或当前复选框的值传递给控制器,以便相应地修改JQuery数据表。感谢您的帮助

以下是我的查看脚本:

    $(function () {

        var oTable = $('#myIssuesTable').dataTable({
            "bProcessing": true,
            "bServerSide": false,
            "bJQueryUI": true,

            "sAjaxSource": '@Url.Action("GetIssuesViaAjax", "Exchange")'

        });

        $('#activeOnly').click(function () {

            var activeStatus = $('#activeOnly:checked').val() ?true:false;

            $.cookie("showActiveIssues", activeStatus, { expires: 365 }, { path: '/' });

            alert($.cookie("showActiveIssues"))        
            //if (navigator.cookieEnabled)
            //    alert("ON");
            //else
            //    alert("OFF");
            @*$.post("@Url.Action("GetIssuesViaAjax", "Exchange")", { test: activeStatus });*@
            @*$.ajax({
                url: '@Url.Action("GetIssuesViaAjax", "Exchange")',
                type: 'POST',
                //dataType: "json",
                //contentType: 'application/json',
                //traditional: true,
                data: {test:"Testarooskie"}*@
        });
            oTable.fnReloadAjax('@Url.Action("GetIssuesViaAjax", "Exchange")');
        });

        $('#activeOnly').ready(function ()
        {
            //alert($.cookie("showActiveIssues"))
            var cbCookie = $.cookie("showActiveIssues")
            if (cbCookie == 1)
            {
                //alert("working correctly")
                $('#activeOnly').prop('checked', true)
            }
            else {
                //alert("working incorrectly")
                $('#activeOnly').prop('checked', false)
            }
        });

    });
</script>

            @Html.CheckBox("activeOnly")
            @Html.Label("Active Only")</>


你有没有检查fiddler或firebug以确保cookie值随请求一起移动?我没有,此时我在想,我应该尝试使用$.ajax调用将值直接发布到控制器中,如果该值仅在一个或两个actionresults中使用,则更有意义。我无法将复选框值发布到控制器中,因为它用于填充jQuery数据表。我想用复选框修改该表的填充。我需要直接访问cookie值(在firebug lite中显示准确的值),但是请求。cookies[“showActiveIssues”]返回空值。jQuery cookie插件生成的cookie类型会影响如何在控制器中访问它吗?
public class ExchangeController : MultiBase
{
    ITExchangeReposity hufDalRepository = new ITExchangeReposity();
    SecurityReposity hufDalSecurityRepository = new SecurityReposity();

    [HttpPost]
    public ActionResult GetIssuesViaAjax(jQueryDataTableParamModel param)
    {


        //HttpCookie test = Request.Cookies["showActiveIssues"];
        //Convert.ToBoolean(HttpContext.Request.Cookies["showActiveIssues"]);

        bool cbValue = Convert.ToBoolean(Request.Cookies["showActiveIssues"]);//returns only default value of "false"

        //string cbValue = Convert.ToString(Request.Cookies["showActiveIssues"]);//returns an empty value ("").




        var issues = hufDalRepository.FindAllIssues(2 , cbValue);
        var result = from c in issues

        select new[] { c.IDTSSubmitIssue.ToString(), c.Subject, c.IDUser.ToString(), c.ReviewedBy, c.StatusDescription, c.DateSubmitted.ToShortDateString() };

            return Json(new
            {
                sEcho = param.sEcho,
                iTotalRecords = issues.Count(),
                iTotalDisplayRecords = issues.Count(),
                aaData = result
            },
            JsonRequestBehavior.AllowGet);

    }