JQM Click事件在Android Webview中不起作用

时间:2012-07-08 06:55:32

标签: android jquery-mobile android-webview

我有一个有三个元素的锚。每个元素都必须响应单击事件。 我有这个和Android网络视图应用程序。

令人惊讶的是,在Android浏览器中点击事件是有效的,但是当我尝试Android webview应用程序时,没有任何反应。请参考下面的代码。

我不知道我错过了什么,因此点击事件在android webview app中不起作用。

$("#cont2 li a").live('click', function (e) {
                //e.preventDefault();
                this.blur();

                var name = $(this).attr("name");
                var staffid = $(this).attr("staffid");
                var recordid = $(this).attr("recordid");
                var primary = $(this).attr("primary");

                if (name == "deletestaff") {
                    // delete sales staff
                    var dretVal = confirm("Delete contact staff " + $(this).attr("staffname") + "?");
                    if (dretVal == false) {
                        return false;
                    } else {

                        var txtprimaryrecordid = $("#txtprimaryrecordid").val();
                        var txtprimarystaffid = $("#txtprimarystaffid").val();

                        if (txtprimaryrecordid == 'undefined') {
                            txtprimaryrecordid = "";
                        }

                        if (txtprimarystaffid == 'undefined') {
                            txtprimarystaffid = "";
                        }

                        if (txtprimaryrecordid == recordid) {
                            $("#txtprimaryrecordid").val("");
                        }
                        if (txtprimarystaffid == staffid) {
                            $("#txtprimarystaffid").val("");
                        }

                        $(this).parents('li').remove();

                        // show deleted item
                        $('#staffs input[type=checkbox]').each(function () {
                            var delstaffid = $(this).attr("staffid");

                            if (staffid == delstaffid) {
                                $(this).attr("checked", false).checkboxradio("refresh");
                            }
                        });
                    }
                }

1 个答案:

答案 0 :(得分:0)

知道了。只需要实现WebChromeClient ...

private class WebChromeClient extends WebChromeClient{
        @Override
        public boolean onJsAlert(WebView view, String url, String message,JsResult result) 
        {
            Log.e("alert triggered", message);
            return false;         
        }
    }