【问题标题】:How to send a jquery value to the controller..?如何将 jquery 值发送​​到控制器..?
【发布时间】:2011-12-02 14:50:26
【问题描述】:

我在视图中有一个使用 jquery 处理的下拉列表。我需要知道如何将下拉列表的选定项目发送到控制器,因为我需要此信息来执行特定操作,有人可以帮助我吗??

这是我尝试过的 javascript 代码,但它不起作用:

  $("#BtnPassType").click(function () {
                    var formData = $("#displaydropdown option:selected").val();

                    $.post("/EquipodeRed/Prueba/", { tipo: formData }, 
                    function (data) {
                        alert(data.toString());
                    }, "text");

                });

这是按钮的 HTML 代码:

<input type="button" id="BtnPassType" value="Send Type" />

这是控制器代码

public String Prueba(string tipo)
        {
            string ubic = "Esta es la Ubicacion del equipo de tipo :";
            return ubic + tipo;
        }

感谢您的帮助,在此先感谢。 问候。

【问题讨论】:

    标签: c# jquery asp.net-mvc-3 model-view-controller


    【解决方案1】:

    您的 AJAX 调用似乎很好。你可以这样简化:

    $('#BtnPassType').click(function () {
        var formData = $('#displaydropdown').val();
        $.post('/EquipodeRed/Prueba', { tipo: formData }, function (data) {
            alert(data);
        });
        // make sure you return false to cancel any default actions of this button
        return false;
    });
    

    另外最好让控制器动作返回动作结果:

    public ActionResult Prueba(string tipo)
    {
        return Content("The selected type is :" + tipo);
    }
    

    当然要避免在你的 javascript 中硬编码 url,总是使用 url helpers:

    $.post('@Url.Action("Prueba", "EquipodeRed")', { tipo: formData }, function (data) {
        alert(data);
    });
    

    【讨论】:

    • 嗨达林..!!我尝试了您的建议,但它不起作用,我需要在下拉列表中获取所选项目的 Id 以进行数据库查询以填充另一个 jquery 插件,但不起作用,在调试期间不显示错误....我对自己做错了什么一无所知...希望您能帮助我...在此先感谢...问候..!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-29
    • 1970-01-01
    相关资源
    最近更新 更多