jquery中的爆炸字符串
explode string in jquery
我通过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/
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('|');
将方法拆分为数组。您可以使用索引访问单个值。
var result = $(row).val().split('|')[2]
alert(result);
或
var result = $(row).val().split('|');
alert(result[2]);
如果它是输入元素那么你需要使用$(row).val()
来获取值..
否则,您需要使用$(row).text()
或$(row).html()
split函数使用您提供的分隔符分隔文本的每个部分,并且您提供了"|"。因此,结果将是一个包含"Shimla","1"answers"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);
什么是row?
这两个都可能是正确的。
1)我假设你在javascript变量'行'中捕获ajax响应。如果是这样的话,这将成立。
var result=row.split('|');
alert(result[2]);
否则2)当$(row)
是jQuery
对象时使用
var result=$(row).val().split('|');
alert(result[2]);
[正如在另一个答案中提到的,您可能必须使用$(row).val()
或$(row).text()
或$(row).html()
等,这取决于$(行)是什么。]
如果输入的id在
后面<input type='text' id='kg_row1' >
那么你就可以使用下面的jquery的split函数得到上面的explosion/split
var kg_id = $(this).attr("id");
var getvalues =kg_id.split("_");
var id = getvalues[1];
Try This
var data = 'allow~5';
var result=data.split('~');
结果alert(result[0]);
您可以创建两个jQuery插件函数来执行此任务。
我添加了一个链接示例,以显示在后续调用之间转换字符串是多么容易。这增加了一点开销,但展示了如何执行函数链以获得更好的可读性。
(function($) {
$.sliceAfterIndex = function(str, index) {
return str.slice(index);
};
$.sliceAfter = function(str, substr) {
return $.sliceAfterIndex(str, str.indexOf(substr) + substr.length);
};
$.tokenAt = function(str, delimiter, index) {
return str.split(delimiter)[index];
};
$.strChain = function(str) {
return {
__str: str,
sliceAfterIndex: function(index) {
this.__str = $.sliceAfterIndex(this.__str, index); return this;
},
sliceAfter: function(substr) {
this.__str = $.sliceAfter(this.__str, substr); return this;
},
tokenAt: function(delimiter, index) {
this.__str = $.tokenAt(this.__str, delimiter, index); return this;
},
value: function(delimiter, index) {
return this.__str;
}
};
};
})(jQuery);
var res = 'row=Shimla|1|http://vinspro.org/travel/ind/';
// Nesting (inside-out)
console.log($.tokenAt($.sliceAfter(res, 'row='), '|', 2));
// Chaining (ltr)
console.log($.strChain(res).sliceAfter('row=').tokenAt('|', 2).value());
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
- 字符串Jquery结构中的变量
- 在字符串 jquery 中添加空格
- 如何在字符串 jQuery 上调用函数
- 将 .val() 转换为字符串 jQuery
- 如何放置 PHP 字符串 jQuery 验证错误消息
- 查找字符串 jQuery/Javascript 的部分
- 从字符串 jQuery 中删除字符串
- 比较明显相等的字符串 JQuery
- 在字符串中使用 PHP 作为字符串.(JQuery)
- 比较两个字符串(jquery .text() 和文字字符串)
- 替换<a>如果它以字符串JQuery结尾
- 字符串jQuery剩余的空白数量
- 重新注册字符串jquery.Ui可拖动
- 字符串替换为另一个字符串jquery/javascript
- 如果子值与某个字符串JQuery匹配,则隐藏父元素
- 单击时从输入中删除字符串?jQuery
- 如何获取特定子字符串jquery之后的字符串
- 不能识别父-字符串JQuery中的子字符串
- 翻译KeyDown键码字符串(jQuery)
- 即使我没有引号来转义,它仍然说我有一个未闭字符串(Jquery)