0

我在单个 js 文件中使用此 ajax 调用,并将其导入我正在使用的 jsf 页面中。

我在 Chrome 中调试这部分,我在 $("#close").click(); 之前设置了一个断点。然后我在控制台中输入这个,它会出现元素的html代码,但它不会点击那个按钮,请帮忙,我的代码有什么问题?谢谢你。

function doLogin(username, password) {
$.ajax({
    "type" : "post",
    "url" : "com.micros.hcp.mobile.ajax.common.AjaxMSMLoginDialog.ajax",
    data : {
        "username" : username,
        "password" : password
    },
    dataType : "text",
    async: false,
    error : function(msg) {
        alert(msg);
        $.mobile.hidePageLoadingMsg();
        notification("Login failed.");
    },
    success : function(data) {
        data = String(data).trim();
        if (data == "login_success") {
            alert($("#close").attr("id")); // make sure I can get the element
            $("#close").click();
        } else {
            addErrorMessage(data);
        }
    }
});
}

下面是我输入 $("close").click(); 时在 chrome 控制台中显示的结果;在断点处。在 Ajax 调用之后,如果我在控制台中运行它,它就可以工作。

$("#close").click();
[
<a href=​"#" id=​"close" data-role=​"button" data-rel=​"back" style=​"display:​ none;​ " data-          corners=​"true" data-shadow=​"true" data-iconshadow=​"true" data-wrapperels=​"span" data-theme=​"c" class=​"ui-btn ui-btn-up-c ui-shadow ui-btn-corner-all" data-transition=​"slideup" data-    direction=​"reverse">​…​&lt;/a>​
]
4

1 回答 1

-1

定义一个JS函数:

function clicked(){
    alert('clicked');
}

onclick属性添加到您的<a></a>元素

<a href=​"#" id=​"close" data-role=​"button" data-rel=​"back" style=​"display:​ none;​ " data-          corners=​"true" data-shadow=​"true" data-iconshadow=​"true" data-wrapperels=​"span" data-theme=​"c" class=​"ui-btn ui-btn-up-c ui-shadow ui-btn-corner-all" data-transition=​"slideup" data-    direction=​"reverse" onclick="clicked()">​…​&lt;/a>​

然后它会用这个触发你的自定义函数“

$('#close').click();
于 2012-07-20T13:11:28.987 回答