Jquery .load () показывает испорченный контент при обновлении. Как это исправить? - PullRequest
0 голосов
/ 28 июля 2011

У меня есть главная страница, на которой загружается содержимое div:

    var content = $("#content_layout");
    //some code here
    content.load("claim_form.aspx?claim_no=" + file_number);

В файле Statement_form.aspx есть выпадающий список, и на основе этого выпадающего списка должны отображаться соответствующие поля ввода.Я устанавливаю индекс на 1 и автоматически загружаю первый набор входов.Вот некоторый код, чтобы объяснить это лучше:

$("#request_type").change(function(e) {
    index = document.getElementById("request_type").selectedIndex;
    if (index == "0") {
        variable_content(1000);
        hide_all(900);
        show_div("#invoice_payment_button_layout", 900);
        real_index = "1";
    }
    else if (index == "1") {
        variable_content(1000);
        hide_all(900);
        show_div("#void_check_button_layout", 900);
        real_index = "2";
// and so on......

Когда я загружаю страницу в первый раз, она отлично работает;однако, когда я нажимаю F5 или снова захожу на страницу через URL, я вижу ВСЕ поля ввода.Как будто индекс был для каждого номера ....

Я использую IE7 для этого (требование компании) ... Может кто-нибудь сказать мне, как решить проблему?Поэтому, когда я нажимаю клавишу F5 или снова получаю доступ к странице, она не показывает мне весь материал?

РЕДАКТИРОВАТЬ: больше код:

//This is the first line
$(document).ready(function() {
//define some variables blah blah
hide_all(1); //I created this function (not sure if one exists so i specify)

затем позже:

function hide_all(speed) {
    $("#comment_box_layout").slideUp(speed);
    $("#invoice_payment_button_layout").slideUp(speed);
    $("#deductible_recovery_request_layout").slideUp(speed);
//so on with all the divs
}

Может быть, теперь будет проще?

Ответы [ 2 ]

0 голосов
/ 28 июля 2011

Вы пытались вызвать метод hide_all () для $ (document) .ready? Похоже, что есть какое-то забавное кеширование CSS, поэтому, возможно, всегда скрывая все, когда документ готов, вы можете установить чистое базовое состояние.

0 голосов
/ 28 июля 2011

Дикая догадка - это, вероятно, комбинация проблем таблиц стилей, и change не запускается при начальной загрузке страницы обновления.

Вы убедились, что chahce срабатывает, когдаВы обновляете страницу?

Проблема с таблицей стилей: каково начальное состояние ваших элементов?дисплей или скрытый?Попробуйте сделать их все изначально скрытыми через таблицу стилей и посмотрите, исчезнет ли это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...