【发布时间】:2017-09-19 03:38:32
【问题描述】:
我找到了一种按照How do I split a string, breaking at a particular character? 将字符串拆分为数组的方法。不幸的是,从函数中获取字符串时,这似乎不起作用。
在其中,字符串是由一个变量组成的。
var input = 'John Smith~123 Street',
array = input.split(/~/);
这将使array[0] = 'John Smith' 和array[1] = '123 Street'。
当我尝试使用函数中的变量进行此操作时,它不起作用,如下所示。
<input type=button onclick="fn('John Smith~123 Street')" value=clickme>
function fn(stringval)
{
var array = stringval.split(/~/);
}
有谁知道为什么会发生这种情况以及如何摆脱它?我试着去var input = stringval;,但那没有用。如果你回答,我可以使用 jQuery 或 Javascript。
谢谢!
编辑:
这正是它正在做的事情:
<h2 class=opt onclick="tree('Basic Formatting',1,'#html~HTML');">
function tree(i,j,k)
{
var a = k.split(/~/);
if (j==1)
{
$('#path').html('<span onclick="pageLoad(\'.lang\')">Home</span> > '+'<span onclick="pageLoad(\''+a[0]+'\')">'+a[1]+'</span> > '+i);}
}
我正在尝试导致:
<div id=path>
<span onclick="pageLoad(\'.lang\')">Home</span>
>
<span onclick="pageLoad(\'#html\')">HTML</span>
> Basic Formatting
</div>
【问题讨论】:
-
您的函数在赋值后没有使用或返回
array变量 - 这就是问题所在,而不是.split()。 -
在 jsfiddle.net/7eq98who 的函数内部工作正常。如当前所示,您不会对该变量执行任何操作。你想让函数做什么
-
是的,但是您想对结果数组做什么?在显示的代码中,您根本不使用结果。请edit您的问题解释所需的结果是什么。
-
这是一个 XY Problem 。您需要在更高层次上准确解释您要完成的工作
-
更新问题中的代码有效:jsfiddle.net/0p2ukvnb - 假设您已包含 jQuery.js。如果它对 你 不起作用,那么也许你没有正确包含你的
<script>或其他东西。请检查您的浏览器控制台是否有错误。
标签: javascript jquery html arrays string