javascript - $.mobile.changePage 不加载 CSS

标签 javascript css ajax mobile

对于 ajax,这是一个非常奇怪的情况。我有一个通过 ajax 调用主页的登录页面,如下所示:

 // Function to call WCF  Service - Infrastructure       
    function CallService() {
        $.ajax({
            type: Type, //GET or POST or PUT or DELETE verb
            url: Url, // Location of the service
            data: Data, //Data sent to server
            contentType: ContentType, // content type sent to server
            dataType: DataType, //Expected data format from server
            processdata: ProcessData, //True or False
            success: function (msg) {//On Successfull service call
                ServiceSucceeded(msg);
            },
            error: ServiceFailed// When Service call fails
        });
    }

    function ServiceSucceeded(result) {

        if (DataType == "json") {
            var resultText = result;
            if (resultText.result == "True") {
                $.mobile.changePage("MainMenu.aspx",{ transition: "slideup" });
            }
            else {
                //Show Error Message
            }
        }
    }

在每个页面中,我都引用了一个名为“general.js”的 js,其中包含以下代码:

function processMenu(menuOptions) {
var options = menuOptions.split('');
var currentOptions = '1234567'.split('')

for (i = 0; i < currentOptions.length; i++) {
    var index = (i + 1) + '';
    if (options.indexOf(index) < 0) {
        var op = $('#op' + currentOptions[i]);
        op.attr('disabled', true);
        op.addClass('btndisabled');
        $(op).live("click", function (event) {
            //do stuff
            event.preventDefault(); // Prevent default link behaviour
        });
    }
}

此代码验证一些编号的控件并在需要时启用名为“btndisabled”的 CSS

“btndisabled”CSS 是:

.btndisabled{    
    background-color: rgb(236,233,216);
    color: #CCC;
    font-style: normal;
}

好的情况是,当我使用

$.mobile.changePage("MainMenu.aspx?",{ transition: "slideup" });

Login.aspx 内容更改为 MainMenu.aspx 内容和 js:

op.attr('disabled', true);
op.addClass('btndisabled');
$(op).live("click", function (event) {
    //do stuff
    event.preventDefault(); // Prevent default link behaviour
});

被执行,CSS 没有被应用,但是“event.preventDefault”被执行。我需要应用 CSS,但我不知道哪里出了问题。有什么想法吗?

更新

观察对象在回发和 ajax 调用中的行为,我意识到一些非常有趣的事情,但我不知道该怎么想。

回传

enter image description here

查看 HTMLAnchorElement

Ajax

enter image description here

如果 DOM 尚未加载 anchor 对象,如何分配 event.preventDefault()???

这太疯狂了......

最佳答案

关于javascript - $.mobile.changePage 不加载 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15816577/

相关文章:

javascript - 等高流体箱

javascript - IE6 中的 jQuery Center Div 切换

html - 有没有办法阻止使用类似 Firebug 的工具编辑页面中的 HTML 和 CSS 内容?

asp.net - 如何动态创建UpdatePanel触发器

javascript - 直接从 Ionic 访问 Hazelcast map

javascript - 数据表 - 刷新/重新加载 ajax 不起作用

javascript - 如何让 Postman 集合在调用之间等待

css - 无图像纯 CSS 箭头标签

jquery - 如何获取表格字段的值到模态框?

javascript - tr 没有在ajax 请求中删除。