Javascript 查找包含选择器id的元素+;文本

Javascript 查找包含选择器id的元素+;文本,javascript,jquery,html,Javascript,Jquery,Html,我不知道该怎么做 我的页面使用PHP从数据库中提取产品代码,并使用它们为元素生成ID。例如:$(“#touch-'.$productcode.”)和$(“#popup-'.$productcode.”)”) 我需要这样做,当单击一个元素时,jQuery将在文档中找到一个元素,该元素包含选择器id的最后11个字符和其他文本 e、 g.选择器$(此)(其生成的id为#touch-123-456-789)将获得自己的id,删除除最后11个字符以外的所有字符(产品代码),将弹出-附加到开头,然后查找元素

我不知道该怎么做

我的页面使用PHP从数据库中提取产品代码,并使用它们为元素生成ID。例如:
$(“#touch-'.$productcode.”)
$(“#popup-'.$productcode.”)”)

我需要这样做,当单击一个元素时,jQuery将在文档中找到一个元素,该元素包含选择器id的最后11个字符和其他文本


e、 g.选择器
$(此)
(其生成的id为
#touch-123-456-789
)将获得自己的id,删除除最后11个字符以外的所有字符(产品代码),将
弹出-
附加到开头,然后查找元素
$(“#popup-123-456-789”)
并执行一个操作。

像这样的事情怎么样

<div class='touch' id='touch-123-456-789'> bla bla </div>
这是你的Html

<div class="pop-up" value= "123-456-789">one</div>
<div class="pop-up" value="123-123-123">two</div>

尝试破坏您的id,如:

 $('.touch').click(function () {
    var id = $(this).attr('id');
    id = id.split(/-(.+)?/)[1];
    $('#popup-' + id).html("Hello changed");

 });
此处的.split()将在第一次出现“-”时分割。所以你可以用这个做任何事。 假设html代码中有两个元素:

 <div class='touch' id='touch-123-456-789'> Touch me </div>
 <div class="popup" id="popup-123-456-789"></div>
触摸我 这可能会有所帮助

HTML:

示例元素1
样本元素2
样本元素3
样本元素4
样本元素5
JS:

(i=0;i)的

 $('.touch').click(function () {
    var id = $(this).attr('id');
    id = id.split(/-(.+)?/)[1];
    $('#popup-' + id).html("Hello changed");

 });
 <div class='touch' id='touch-123-456-789'> Touch me </div>
 <div class="popup" id="popup-123-456-789"></div>
<div class="element" id="#touch-123-456-790">Sample element1</div>
<div class="element" id="#touch-123-456-791">Sample element2</div>
<div class="element" id="#touch-123-456-792">Sample element3</div>
<div class="element" id="#touch-123-456-793">Sample element4</div>
<div class="element" id="#touch-123-456-794">Sample element5</div>
for (i = 0; i <= $(".element").length; i++) {
    if (i < $(".element").length) {
        var id = $(".element").eq(i).attr("id");
        id = "popup-" + id.substring(7);
        $(".element").eq(i).attr("id", id);
    } else {
        $("#popup-123-456-792").css('color','blue');
    }
}