Скрыть div с переменным динамическим идентификатором

0

Div - это переключатель, который получает динамический идентификатор. имя класса is impbtn, id генерируется в переменной this.impbtn6.id

HTML:

    div id="widget-id63032Candy_Eaten_importGoodsBtn" class="impbtn"></div>

   </div>

Есть два места, в которых требуется скрытие - нажмите и загрузите событие click click

document.getElementById(this.impbtn6.id).style.visibility="hidden";

работает отлично. Я не могу использовать Document.getelementbyID, так как нагрузка нескольких форм происходит, и кнопка не должна быть скрыта. Поэтому я использовал JQ для доступа к свойствам css.

jQuery('.impbtn, #this.impbtn6.id').css('visibility',"hidden");

работает, но делает все кнопки в классе невидимыми. Я хочу сделать только this.expbtn6.id невидимым не все идентификаторы этого класса.

Я прочитал каждую доступную страницу. Некоторые вещи Iv безуспешно пытались (отдельно)

var vid= this.impbtn6.id;
jQuery("#"+ vid).visibility("hidden");
$('#vid .impbtn').css('visibility',"hidden")
var row2=$(".impbtn").find("div#"+vid);
row2.hide();
$('#vid .impbtn').css('visibility',"hidden");
$('div#vid').css('visibility',"hidden");
$('.impbtn', $("#div" + this.impbtn6.id)).css('visibility',"hidden");
$("#div"+ vid).css('visibility',"hidden");
$("#"+ vid).hide();
$('#vid').css('visibility',"hidden");
row = $('#' + vid);
row.css('visibility',"hidden");

Я был бы очень признателен за ответ/комментарий.

Теги:
oop

3 ответа

0

С помощью jQuery:

$("#"+this.expbtn6.id).hide();

Я надеюсь, что это помогает.

0

ваш вопрос немного запутан, так как вы говорите document.getElementById(this.exportbtn6.id).style.visibility = "visible";

отлично работает, но этот код показывает div, а не скрывает его, и почему нельзя использовать тот же код для скрытия, если вы используете его для показа?

то ваш другой фрагмент, который предположительно работает:

jQuery ('. expbtn, # this.exportbtn6.id'). css ('видимость', "видимая");

не может работать, потому что # this.exportbtn6.id не будет разрешать содержимое переменной внутри двойных кавычек, поэтому я уверен, что эта строка ничего не сделает.

Способ сделать это правильно

jQuery ('#' + this.exportbtn6.id + '.expbtn'). hide();

но я не могу точно сказать, поскольку вопрос не ясен. Если мое понимание вашего вопроса верное, указанная выше строка сделает трюк. Имейте в виду, что значение "this" будет отличаться в зависимости от контекста, поэтому, возможно, вы ссылаетесь на неправильное "это".

  • 0
    Мои извенения . Код предназначен для сокрытия, поэтому я использовал скрытый вместо show в том месте, которое вы указали в getelementbyID. <2> Вероятно, поэтому он скрыл все элементы с именем класса = expbtn и дал иллюзию работы. <3> Я попробовал твой код, но он не скрывает div. Я не совсем понимаю, почему селектор не работает. <4> Console.log (this.expbtn6.id)) дает точно такой же идентификатор в элементе inspect, поэтому я не думаю, что у меня неправильная ссылка. Спасибо
  • 0
    @ user3261251 возможно ли, что-то еще раз показывает div? Вы можете поставить предупреждение сразу после hide (), чтобы вызвать паузу и посмотреть, скрыт ли div? также вы можете console.log (jQuery ('#' + this.exportbtn6.id + '.expbtn') [0])?
Показать ещё 3 комментария
0

Попробуй это

$('#this.exportbtn6.id').css('visibility','visible');
  • 0
    Я предполагаю, что вы имели в виду $ ('# this.exportbtn6.id'). Css ('видимость', 'скрытый') ;. Фигурные скобки возвращают ошибку. Это не работает. Но спасибо за попытку
  • 0
    Ой! Извините за это .. хорошо, я удалил фигурные скобки .. все ли получилось после удаления
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню