![](/img/trans.png)
[英]Using knockoutjs with KoGrid not working Chrome or FF but works in IE8
[英]Split not working in IE8 but working in FF and Chrome
我想分割以下字符串。
Ex: "Good Site" www.test.com
我想存儲為
anchor text = Good Site
href = www.test.com
我嘗試在正則表達式下面進行拆分,但在IE中不起作用。 它可以在FF和Chrome中運行。
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to display the array values after the split.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction()
{
var str = '"How are you doing today?" I am good';
var res = str.split(/"(.*?)"/);
document.getElementById("demo").innerHTML=res;
}
</script>
</body>
</html>
當使用.split()
時,IE(Safari也是iirc)在結果數組中不包含捕獲的模式。 也就是說,您應該使用匹配而不是拆分:
>> '"Good Site" www.test.com'.match(/^"([^"]+)"\s*(.*)/);
[""Good Site" www.test.com", "Good Site", "www.test.com"]
您可以嘗試以下方法:
myFunction() {
var str = '"Good Site" www.test.com';
var res = str.split('"').splice(1); // outputs: Good Site, www.test.com
var anchor = res[0]; // Good Site
var href = res[1]; // www.test.com
document.getElementById("demo").innerHTML = res;
}
當此代碼僅使用split()
執行,如var res = str.split('"');
,輸出將如下所示:
,Good Site, www.test.com
並且它的長度為3
這不是必需的),這是由於用'"'
倒置逗號分隔,所以長度為3
,所以在這里我們必須執行.splice(1)
來刪除數組中的空索引。
var res = str.split('"').splice(1);
所以它的輸出和長度是2
:
Good Site, www.test.com
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.