ご覧いただきありがとうございます!
$(function() { var res = ""; $(".text").map(function() { var res = $(this).text().match(/>+\d{1,3}/) var replay_id = $(this).text().match(/\d{1,3}/) if (res) { var thread_id = parseInt($(this).parents('.thread').attr('id')); $('.linkers'+replay_id).append('<a href="#" class = "onMouse" name = '+thread_id+'>>'+thread_id+'</a>'); } $(this).html(new_text); }); });
掲示板のレスアンカーの様なものを作っているのですが、
text内に>+数字があった際にif以下のメソッドを行う形にしているのですが、
text内に¥>+数字が複数( 例: >2>3 )あった際に最初のアンカーしかif以下のメソッドが
作動せず、困っています。
自分としてはmatchが怪しいのではないかと思い、色々調べてみたのですがどうにもできないのが現状です。
御力をお貸しいただけませんでしょうか?
追記
<div class="container"> <div class="comments"> <ol class= "comments-list"> <?php foreach($posts as $post => $values): ?> <?php $i++ ;?> <span class="thread" id = "<?=$i;?>"> <h1><?=$i;?></h1> <div> <?php foreach($values as $value) :?> <form class="" action="" method="post"> <input type="hidden" name="comment_id" value="<?= $post;?>"> <input type="hidden" name="id" value="<?= $sledid;?>"> <input type="button" name="re" value="返信する" class = "replay"> </form> <li class = "text">名前:<?= h($value['name']);?><p>本文:<?= h($value['body']); ?></p> </li> <div class="linkers<?=$i?>"> 返信元: </div> <?php endforeach; ?> </div> </span> <?php endforeach; ?> </ol> </div>