jQuery代码中的间歇性错误
我收到以下java脚本错误(间歇性)jQuery代码中的间歇性错误,jquery,Jquery,我收到以下java脚本错误(间歇性) 函数外部的“return”语句 下面是在我的jQuery代码中返回的函数。我想知道这个代码模式有什么问题?在一个函数中调用另一个函数是一个问题吗?有什么想法吗 代码 这不是对你问题的回答,因为根据你问题中给定的代码,问题在其他地方,但无论出于什么目的,你编写的代码(两个函数)都可以在这一个函数中完成,还有其他方法,但我认为这已经够了 function getSelected(el) { var opt = $(el).find('option:sel
函数外部的“return”语句
下面是在我的jQuery代码中返回的函数。我想知道这个代码模式有什么问题?在一个函数中调用另一个函数是一个问题吗?有什么想法吗
代码
这不是对你问题的回答,因为根据你问题中给定的代码,问题在其他地方,但无论出于什么目的,你编写的代码(两个函数)都可以在这一个函数中完成,还有其他方法,但我认为这已经够了
function getSelected(el)
{
var opt = $(el).find('option:selected'), l = opt.length, i = 0, arr = [], t;
for(;i < l; i++) {
t = $(opts[i]).text(), arr[i] = t.substring(0, t.lastIndexOf(":"));
}
isAnyParameterSelected = (isAnyParameterSelected == 0 && opt) ? 1 : 0;
return arr.join(',');
}
查看使用同一函数的三个版本但使用一个函数(代码更少)的一些示例。我真的看不出您的语法有任何错误,但这背后总是有某种奇怪的潜在问题。也许这种方法会奏效,因为我正在从内部匿名函数中删除一个返回值,因为这可能是与return语句冲突的地方。一年前我遇到过类似的问题,下面是一个您可以使用的解决方法
function getSelectedParameters(parameterControl) {
var selectedElements = new Array();
$.map($(parameterControl + " option:selected"), function (el, i) {
selectedElements = getCode($(el).text());
return false; //edit this to make it false
});
var parameter = selectedElements.join(",");
if (isAnyParameterSelected == 0) {
if (parameter.length > 0) {
isAnyParameterSelected = 1;
}
}
return parameter;
}
function getCode(selectedValue) {
var firstIndex = selectedValue.lastIndexOf(":");
var code = selectedValue.substring(0, firstIndex);
return code;
}
我正在做的是从$.map值中删除返回值,使其返回为false;同时,在$.map中,它分配给外部变量selectedElements
也许这会帮助或引导你朝着正确的方向前进。我对这个代码有点怀疑:
selectedElements = getCode($(el).text());
也许您可以使用SR5建议的推送方法:
$.each($(parameterControl + " option:selected"), function (el) {
selectedElements.push(getCode($(el).text()));
});
我想你是想用这个来创建一个新的数组?我希望我在这里能有更多的合作
如果您对我的答案进行了升级投票,并且使用了SR5的推送方法,每个$5,请也对SR5进行升级投票:-p感谢所有的答案 当我删除另一个脚本-
href=“javascript:return void(0);”
时,错误不会出现。我想这就是问题所在
从以下方面:
<a href="javascript:return void(0);" id="MoveSelectedItems" class="k-button">
<img src="~/Images/move.png" height="18" width="18" />
Move
</a>
您是否在编译代码?你的工具链是什么?我不认为你可以从匿名回调函数返回一个值。它看起来很好-没有明显的跳出。当你得到错误时,它会告诉你它在哪一行吗?@YuriyGalanter在map()
中返回一个值是正常的@Archer说得对,我不知道,谢谢参考:
selectedElements = getCode($(el).text());
$.each($(parameterControl + " option:selected"), function (el) {
selectedElements.push(getCode($(el).text()));
});
<a href="javascript:return void(0);" id="MoveSelectedItems" class="k-button">
<img src="~/Images/move.png" height="18" width="18" />
Move
</a>