Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
jQuery-将文本分隔为字符串_Jquery_Loops - Fatal编程技术网

jQuery-将文本分隔为字符串

jQuery-将文本分隔为字符串,jquery,loops,Jquery,Loops,假设我的HTML如下所示: <p>12345, 23, 64229, 359</p> ​$("p").html(function(i, h) { return h.replace(/\d+/g, function(m) { return "http://www.example.com/?id=" + m; }); });​​ 12345,2364229359 此段落可以有数百个用逗号分隔的值。 它也可以是空的 我想把这些值变成链接。 第一个值应链接到“” “”的

假设我的HTML如下所示:

<p>12345, 23, 64229, 359</p>
​$("p").html(function(i, h) {
  return h.replace(/\d+/g, function(m) { return "http://www.example.com/?id=" + m; });
});​​
12345,2364229359

此段落可以有数百个用逗号分隔的值。 它也可以是空的

我想把这些值变成链接。 第一个值应链接到“” “”的第二个值 …等等


最好的方法是什么?

试试看:

var nums=$('p').text().split(/\s*,\s*/);
var标签=“”;
$。每个(nums,函数(i,val){
标记+='
' }); $('body')。追加(标记);​
如果您担心内容的安全性,可以这样做:

var nums = $('p').text().split(/\s*,\s*/);
var tags = [];

    $.each(nums,function(i,val) {
        tags.push($('<a>',{text:val + ' ', href:'http://www.example.com/?id=' + val}));
    });
$(tags).appendTo('body');
var nums=$('p').text().split(/\s*,\s*/);
var标签=[];
$。每个(nums,函数(i,val){
tags.push($('',{text:val+'',href:'http://www.example.com/?id=“+val}”);
});
$(标记).appendTo('body');

试试看:

var nums=$('p').text().split(/\s*,\s*/);
var标签=“”;
$。每个(nums,函数(i,val){
标记+='
' }); $('body')。追加(标记);​
如果您担心内容的安全性,可以这样做:

var nums = $('p').text().split(/\s*,\s*/);
var tags = [];

    $.each(nums,function(i,val) {
        tags.push($('<a>',{text:val + ' ', href:'http://www.example.com/?id=' + val}));
    });
$(tags).appendTo('body');
var nums=$('p').text().split(/\s*,\s*/);
var标签=[];
$。每个(nums,函数(i,val){
tags.push($('',{text:val+'',href:'http://www.example.com/?id=“+val}”);
});
$(标记).appendTo('body');

您不需要jQuery,您可以用纯javascript来实现这一点:

vals = $('p').html().split(',');
for(var i in vals) {
  tags += '<a href=http://www.example.com/?id=' + val + '>link</a><br>'
}
$('body').append(tags)
vals=$('p').html().split(',');
用于(var i中的var i){
标记+='
' } $('body')。附加(标记)
您不需要jQuery,您可以用纯javascript来实现这一点:

vals = $('p').html().split(',');
for(var i in vals) {
  tags += '<a href=http://www.example.com/?id=' + val + '>link</a><br>'
}
$('body').append(tags)
vals=$('p').html().split(',');
用于(var i中的var i){
标记+='
' } $('body')。附加(标记)
您可以使用regex
.replace()
,类似于:

<p>12345, 23, 64229, 359</p>
​$("p").html(function(i, h) {
  return h.replace(/\d+/g, function(m) { return "http://www.example.com/?id=" + m; });
});​​
,或使其成为可单击的链接:

$("p").html(function(i, h) {
  return h.replace(/\d+/g, function(m) { 
     return "<a href='http://www.example.com/?id="+m+"'>"+m+"</a>"; 
  });
});​
$(“p”).html(函数(i,h){
返回h.replace(/\d+/g,函数(m){
返回“”;
});
});​

.

您可以使用regex
.replace()
,类似于:

<p>12345, 23, 64229, 359</p>
​$("p").html(function(i, h) {
  return h.replace(/\d+/g, function(m) { return "http://www.example.com/?id=" + m; });
});​​
,或使其成为可单击的链接:

$("p").html(function(i, h) {
  return h.replace(/\d+/g, function(m) { 
     return "<a href='http://www.example.com/?id="+m+"'>"+m+"</a>"; 
  });
});​
$(“p”).html(函数(i,h){
返回h.replace(/\d+/g,函数(m){
返回“”;
});
});​

.

这并不难,但除了字符串附加之外,这主要是jQuery:)
for/in
在数组上不是一个好主意。您应该使用
for
循环。这并不难,但除了字符串附加之外,这主要是jQuery:)
for/in
在数组上不是一个好主意。您应该为循环使用