0

Visual Studio 2010:Asp.Net 4.0

我正在尝试使用以下 JavaScript 函数在回发时获取 GridView 的单元格集合的第一个单元格 [0]。它适用于 IE8 和 IE9,但不适用于 Firefox 或 Safari。


function onBeginRequest(sender, args) {
    var send = args.get_postBackElement().id;

    if (args.get_postBackElement().cells != null) {
        var menu = args.get_postBackElement().cells[0].innerHTML;
        if (menu.indexOf("vehicles") != -1) {
            send = "ProjectClick";
        }
    }

    if (displayWait(send) == "yes") {
        $find('PleaseWaitPopup').show();
    }
}
4

1 回答 1

0

使用 getElementById 方法并获取控件 tagName 或验证 Id。我检查了标签名称。

function pageLoad(sender, args) {
    var sm = Sys.WebForms.PageRequestManager.getInstance();
    if (!sm.get_isInAsyncPostBack()) {
        sm.add_beginRequest(onBeginRequest);
        sm.add_endRequest(onRequestDone);
    }
}

function onBeginRequest(sender, args) {
    var send = args.get_postBackElement().id;
    var gv = document.getElementById(send);

    if (gv != null && gv.tagName == "TABLE") {
        var menu = gv.rows[0].cells[0].innerHTML;
        if (menu.indexOf("vehicle") != -1) {
            send = "ProjectClick";
        }
    }

    if (displayWait(send) == "yes") {
        $find('PleaseWaitPopup').show();
    }
}

function onRequestDone() {
    $find('PleaseWaitPopup').hide();
}

function displayWait(send) {
    switch (send) {
        case "ProjectClick":
            return ("yes");
            break;
        default:
            return ("no");
            break;
}
于 2013-01-25T13:08:28.090 回答