Вставить после элемента - логическая помощь - PullRequest
1 голос
/ 17 июня 2011

У меня есть следующее:

$.post(baseUrl+"/index/voto",{id:eid},function(e){
 var divMsg = $("#msg");
 var html = "";
   if(e.msg == 1){
     html = '<img src="'+baseUrl+'/lib/img/showImageA.png" alt="pdf" />';
   }else if(e.msg == 3){
     //HERE I MUST DISPLAY A TEXT AFTER A GIVEN ELEMENT
   } else if(e.msg == 2){
     html = '<img src="'+baseUrl+'/lib/img/showImageB.png" alt="pdf" />';
   } else{
     html = '<img src="'+baseUrl+'/lib/img/showImageC.png" alt="pdf" />';
   }
   divMsg.show();
   divMsg.html(html); 

}, 'json');

Итак, если что-то придет, я заменю контент на изображение.Это работает.

Проблема в том, что во втором случае (e.msg ==3) я должен не удалить или заменить все это изображением, , но мне нужнодобавить элемент p в определенном месте, говоря: «что-то».

Я пытался отобразить: нет;этот элемент и затем добавьте:

else if(e.msg == 3){
 myParagrafId.show();
}

Ничего не появляется.

Я пытался:

else if(e.msg == 3){
 $('#foo').append('<p>Something</p>');
}

Все еще ничего ...

Функцияпохоже, возвращает html, игнорируя мои инструкции во втором условном выражении.

Итак, возможно, мне нужно взять существующую HTML-часть, добавить то, что мне нужно, и затем разрешить функции выводить ее?

Дополнительные примечания: Если я размещу оповещение ();внутри этого условия (e.msg == 3) это работает.

1 Ответ

1 голос
/ 17 июня 2011

Во-первых, все, что вы всегда помещаете html в $("#msg") здесь

//in case 3 html = ''
divMsg.html(html);

, поэтому вы должны проверить, что это не пустая строка:

if (html != ''){
    divMsg.html(html);
}

Так что, если вы пытались сделать somenthing внутри $("#msg") (например, показывать скрытый div внутри него), в случае 3 он ничего не делает, потому что его заменяют на '', потому что вы звоните $("#msg").html('');

это помогает?

В противном случае вы делаете что-то не так в этом случае, если, если вы покажете свою разметку, мы можем помочь

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