селектор jQuery, где текст = некоторое значение

Я думаю, что вы пытаетесь открыть конкретный модал при нажатии на изображение, и если это так, попробуйте следующее:

for($i=0;$i<count($certificazioni);$i++){
    $etc=certificazioni[$i];
    ....
    <img src="/cubo/addDocument.png"/ height="24" width="24" data-toggle="modal" data-target="#addEvento<?= $i ?>">

    <div class="modal fade" id="addEvento<?= $i ?>" tableindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
            <?php echo $etc; ?>
}

вы должны включить модал внутри цикла for, чтобы что у каждого изображения будет свой модальный режим, и когда вы нажмете на изображение 1, откроется модальный 1 ... и вам даже не нужно использовать javascript для этого.

22
задан Keavon 20 May 2014 в 04:14
поделиться

6 ответов

Есть ли другой способ выбора элемента на основе содержимого текста?

Попробуйте это:

$('.js-rating-labelText').filter(function(){
  return (/unrated/i).test($(this).text())
}).css('visibility', 'hidden');
19
ответ дан 29 November 2019 в 04:20
поделиться

Perhaps the issues is with the :contains('Unrated') part of the function. As changing the text to any random value produces the same result:

$("#ratingDiv:contains('somerandomtext')").hide();
7
ответ дан 29 November 2019 в 04:20
поделиться

Убедитесь, что ваш код работает после функция js-kit заполнила текст, а не перед ним.

0
ответ дан 29 November 2019 в 04:20
поделиться

Вот немного html-кода из функции javascript:

<div class="js-kit-rating" id="ratingDiv" style="width: 86px; visibility: hidden;" jk$initialized="true" path="/business/blogger-com" permalink="/businessblogger-com" freeze="yes" starcolor="Golden">
  <table class="js-ratings-tableWrapper" border="0" cellSpacing="0" cellPadding="0">
    <tbody>
      <tr>
        <td>
          <div class="js-ratingWrapper" style="width: 80px;">
          <div style="float: left; cssfloat: left;">
              <div style="width: 80px; height: 15px;">
<div class=" js-kit-objIcon" style="width: 16px; float: left; height: 15px; cssfloat: left;" imageURL="//js-kit.com/images/stars/golden.png">
  <img style="display: none;" src="//js-kit.com/images/stars/golden.png" complete="complete"/>
<div class=" js-kit-objIcon" style="width: 16px; float: left; height: 15px; cssfloat: left;" imageURL="//js-kit.com/images/stars/golden.png"/>
<div class=" js-kit-objIcon" style="width: 16px; float: left; height: 15px; cssfloat: left;" imageURL="//js-kit.com/images/stars/golden.png"/>
<div class=" js-kit-objIcon" style="width: 16px; float: left; height: 15px; cssfloat: left;" imageURL="//js-kit.com/images/stars/gray.png">
  <img style="display: none;" src="//js-kit.com/images/stars/gray.png" complete="complete"/>
<div class=" js-kit-objIcon" style="width: 16px; float: left; height: 15px; cssfloat: left;" imageURL="//js-kit.com/images/stars/gray.png"/>
<div class=" js-rating-labelText">
-1
ответ дан 29 November 2019 в 04:20
поделиться

You might consider using the hide() / show() methods as well.

$(".js-rating-labelText:contains('unrated')").hide()
0
ответ дан 29 November 2019 в 04:20
поделиться

Исходя из предоставленного вами HTML-кода, я не вижу, откуда берется текст «без рейтинга», для которого вы тестируете.

Однако, если это полнота текста в этом div просто проверьте его напрямую.

if ($('.js-rating-labelText').text() == 'unrated'){
  $(this).hide();
}
0
ответ дан 29 November 2019 в 04:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: