【问题标题】:jquery webmethod call returns whole page htmljquery webmethod调用返回整个页面html
【发布时间】:2014-06-19 22:31:59
【问题描述】:

我有一个网站 www.arabadukkan.com 我在顶部有级联组合框(araç türü->marka->model 等)

我正在调用 web 方法来返回结果,但结果是整个页面的 html。 这段代码在我当地很好用 网络方法代码:

public static string GetMarkas(string selectedId)
{

    var items = Service.DS.GetMarkas().WithCategoryId(selectedId.SayiVer());

    string donen = "<option value=''>Tüm Markalar...</option>";

    foreach (var item in items) donen += string.Format("<option value='{0}'>{1}</option>", item.id, item.Title);

    return donen;
}

我找不到任何解决方案。当我在 chrome 中查看网络选项卡时,我看到 GetMarkas 响应标头是“Content-Type:text/html; charset=utf-8”

我的脚本是:

function GetCombo(fromCombo, toCombo, method) {
    var veriler = {
        selectedId: $(fromCombo).val()
    };
    $(toCombo).find('option').remove().end().append("<option value='0'>Yükleniyor...</option>");
    $.ajax({
        type: "POST",
        url: ResolveUrl('~/wm.aspx/') + method,
        data: $.toJSON(veriler),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            $(toCombo).find('option').remove().end().append(msg.d);
            $(toCombo).trigger("change");
        },
        error: function (msg, x, error) {
            alert("Hata Oluştu." + error);
        }
    });
}

【问题讨论】:

  • 你为什么使用dataType: "json",?当返回 dataType 时是 HTML。

标签: c# jquery asp.net ajax webmethod


【解决方案1】:

您可能需要确保已添加必要的 web.config 条目,特别是 httpModules 部分。请转至this

【讨论】:

    【解决方案2】:

    试试下面的代码,我猜你这里不需要 json..

    function GetCombo(fromCombo, toCombo, method) {
        var veriler = {
            selectedId: $(fromCombo).val()
        };
        $(toCombo).find('option').remove().end().append("<option value='0'>Yükleniyor...</option>");
        $.ajax({
            type: "POST",
            url: ResolveUrl('~/wm.aspx/') + method,
            data: { selectedId : veriler},
            dataType: 'html',
            success: function (msg) {
                $(toCombo).find('option').remove().end().append(msg.d);
                $(toCombo).trigger("change");
            },
            error: function (msg, x, error) {
                alert("Hata Oluştu." + error);
            }
        });
    }
    

    【讨论】:

      猜你喜欢
      • 2010-10-09
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 2015-07-15
      • 1970-01-01
      • 1970-01-01
      • 2015-08-27
      • 2011-02-04
      相关资源
      最近更新 更多