Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery-如果父div包含特定单词,则替换子div中的单词_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript jQuery-如果父div包含特定单词,则替换子div中的单词

Javascript jQuery-如果父div包含特定单词,则替换子div中的单词,javascript,jquery,html,css,Javascript,Jquery,Html,Css,如果父div包含一个特定的单词,那么我要做的就是更改我添加的div中的一个特定单词 <p class="days">Stock, 1 piece remaining.</p> 库存,剩余1件 我必须添加一个额外的解决方法来添加另一个div,以便使用prepend函数获取更多信息: $(".days").append('<div class="daysAddiontalInfo">Explaination of stock 1 piece</div&g

如果父div包含一个特定的单词,那么我要做的就是更改我添加的div中的一个特定单词

<p class="days">Stock, 1 piece remaining.</p>
库存,剩余1件

我必须添加一个额外的解决方法来添加另一个div,以便使用prepend函数获取更多信息:

$(".days").append('<div class="daysAddiontalInfo">Explaination of stock 1 piece</div>');
$(“.days”).append('1件库存说明');
我想要以下的;如果我的父div(.days)包含数字1-我需要它显示1件,但是如果它包含数字2、3、4或5,我需要它显示2、3、4或5件

我不知道如何扩展代码来完成这个特定任务


提前感谢您的时间和反馈

下面是一个示例解决方案:

var $days = $(".days");
var pieces = $days.text().match(/\d/);

$days.append('<div class="daysAddiontalInfo">Explaination of stock '+pieces+' piece</div>');

下面是演示:

如果您确定它将是一个数字,那么您可以使用

var number = parseInt($(".days").text());
$(".days").append('<div class="daysAddiontalInfo">Explaination of stock "+ number +" piece</div>');
和javascript

var word = $(".days span').text();
$(".days").append('<div class="daysAddiontalInfo">Explaination of stock "+ word +" piece</div>');
var word=$(“.days span').text();
$(“.days”).append(‘库存说明’+word+‘单件’);

您可以为
append()
方法提供一个函数,该函数将分别检查每个
.days
元素的HTML。从那里,您可以使用正则表达式匹配
1个
2个
等字符串,并返回要追加的新HTML。尝试以下操作:

$('.days').append(function(i, html) {
    var matches = /(\d pieces?)/gi.exec(html);
    return '<div class="daysAddiontalInfo">Explaination of stock ' + matches[0] + ' </div>';
});
$('.days').append(函数(i,html){
var matches=/(\d个片段?)/gi.exec(html);
返回“股票解释”+匹配[0]+'';
});

您可能想查找复数形式,它看起来很有希望,但当数字大于1时,它不会改变每个片段的值?无论.days段中的数字是什么,它都会持续显示片段?我做了一些修正(它只匹配一个数字而不是整数,因此如果给出例如17,则将其视为1;)并准备了一个工作代码,请查看:。@user3587168我还更新了帐户,使其具有多个
。天
element@user3587168当然可以,如果这个答案对你有用,请接受
var word = $(".days span').text();
$(".days").append('<div class="daysAddiontalInfo">Explaination of stock "+ word +" piece</div>');
$('.days').append(function(i, html) {
    var matches = /(\d pieces?)/gi.exec(html);
    return '<div class="daysAddiontalInfo">Explaination of stock ' + matches[0] + ' </div>';
});