47

我通过ajax得到以下结果。

row=Shimla|1|http://vinspro.org/travel/ind/

我想从中获得http://vinspro.org/travel/ind/ 。我使用了查找和拆分功能,但它不起作用。请让我知道我怎样才能得到它?

var result=$(row).split('|');
    alert(result);

chrome显示以下错误

Uncaught Error: Syntax error, unrecognized expression: Shimla|1|http://vinspro.org/travel/ind/ 
4

6 回答 6

130

split方法将创建一个数组。所以你需要在你的情况下访问第三个元素..

数组索引为 0您需要访问result[2]以获取 url

var result = $(row).text().split('|');
alert( result[2] );

您没有给我们足够的信息来确切地知道row是什么。因此,根据您获取变量的方式row,您可能需要执行以下操作之一。

  • 如果row是一个字符串那么row.split('|');
  • 如果它是一个 DOM 元素,那么$(row).text().split('|');
  • 如果它是一个input元素,那么$(row).val().split('|');
于 2012-12-24T19:35:47.083 回答
8

拆分创建一个数组。您可以使用索引访问各个值。

var result=$(row).val().split('|')[2]
alert(result);

或者

var result=$(row).val().split('|');
alert(result[2]);

如果它是输入元素,那么您需要使用$(row).val()来获取值..

否则,您将需要使用$(row).text()$(row).html()

于 2012-12-24T19:34:26.063 回答
6

split 函数使用您提供的分隔符分隔文本的每个部分,并且您提供了“|”。所以结果将是一个包含“Shimla”、“1”和“http://vinspro.org/travel/ind/”的数组。你可以操纵它来获得第三个,“http://vinspro.org/travel/ind/”,这是一个例子:

var str="Shimla|1|http://vinspro.org/travel/ind/";
var n = str.split('|');
alert(n[2]); 

如其他答案所述,此代码会有所不同,具体取决于它是字符串 ($(str).split('|');)、文本框输入 ($(str).val().split('|' );) 或 DOM 元素 ($(str).text().split('|');)。

您也可以使用纯 JavaScript 来获取 9 个字符后的所有内容,即“http://vinspro.org/travel/ind/”。这是一个例子:

var str="Shimla|1|http://vinspro.org/travel/ind/";
var n=str.substr(9);
alert(n);
于 2012-12-24T19:43:38.917 回答
4

什么是行?

这些都可能是正确的。

1)我假设您在 javascript 变量“行”中捕获您的 ajax 响应。如果是这样的话,这将成立。

var result=row.split('|');
    alert(result[2]);

否则

2) 使用 this where$(row)是一个jQuery对象。

var result=$(row).val().split('|');
    alert(result[2]);

[如另一个答案中所述,您可能必须使用$(row).val()or$(row).text()$(row).html()等,具体取决于 $(row) 是什么。]

于 2012-12-24T19:35:27.857 回答
1

如果您输入的 id 如下

<input type='text'  id='kg_row1' >

然后你可以在jquery中使用以下split函数来分解/拆分上面的内容

  var kg_id = $(this).attr("id");
  var getvalues =kg_id.split("_");
  var id = getvalues[1];
于 2021-01-22T10:05:58.490 回答
0

尝试这个

var data = 'allow~5'; 
var result=data.split('~');

结果

alert(result[0]);
于 2019-07-15T06:47:14.317 回答