繁体   English   中英

Javascript:读取任何值的数字

[英]Javascript: read number of any value

我正在尝试将工具提示应用于foreach循环,但是我需要JavaScript读取属性“ mystickytooltip”,并在末尾添加数字。

<div id="mystickytooltip{$smarty.foreach.cart.iteration}" class="stickytooltip">

将输出

<div id="mystickytooltip1" class="stickytooltip">
<div id="mystickytooltip2" class="stickytooltip">
<div id="mystickytooltip3" class="stickytooltip">

而且我需要JavaScript读取“ mystickytooltip(ANYVALUE)”,这可能吗? 我的JS知识糟透了。

//stickytooltip.init("targetElementSelector", "tooltipcontainer")
stickytooltip.init("*[data-tooltip]", "mystickytooltip")

谢谢。

在您之前的问题(现在已删除)中,您好像正在使用jQuery。 如果是这种情况,您应该只能使用类选择器:

var myToolTips = $("div.mystickytooltip");

或者,您可以使用“ Attribute Starts With选择器:

var myToolTips = $("div[id^='mystickytooltip']");

我用attr-starts-with选择器可以预见的唯一可能的缺点是,如果您还有其他ID以“ mystickytooltip”开头的div元素(即“ mystickytooltipcontainer”)。 在这种情况下,您可以将class和attr-starts-与选择器结合使用:

var myToolTips = $("div.mystickytooltip[id^='mystickytooltip']");

您可以尝试以下方法:

var i=1; // starting index
while(document.getElementById('mystickytooltip'+i)) {
  stickytooltip.init("*[data-tooltip]", "mystickytooltip"+(i++));
}

用英语:只要您可以找到ID为'mysticktooltip'+i (+在js中为字符串连接)的stickytooltip.init ,请使用此ID作为第二个参数(并递增i )调用stickytooltip.init

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM