gpt4 book ai didi

javascript - 句子的正确顺序

转载 作者:行者123 更新时间:2023-12-03 10:46:04 25 4
gpt4 key购买 nike

已关注 this code ,我想从上到下选择:

Word2,然后是 Word1,最后是 Word3 3

显示的结果是:

Word2 2 Word1 1 Word3 3

但我正在寻找类似的东西:

Word1 1 Word2 2 Word3 3

所以一旦我选择了Word1,它就应该放在开头,然后是Word2。

如果有人可以帮助纠正我的代码中的错误:

function nextItemWasAlreadyShown(index) {
var continueLoop = false;
var resText = $('.displayCheck').html();
var text = $('select.ayaNum').eq(index).next('input[type="hidden"]').val();
if (resText.indexOf(text) > -1) continueLoop = true;
return continueLoop;
}

function getValues() {
var result = [];
var me = this;
$('select.ayaNum').each(function (idx, el) {
var $el = $(el);
var textToAdd = $el.next('input[type="hidden"]').val() + ' ' + $el.val();
result.splice(idx, 0, textToAdd);
if ((me === el) && !nextItemWasAlreadyShown(idx + 1)) return false;
});
$('.displayCheck').html(result.join(' '));
}

$('select.ayaNum,input[type="hidden"]').change(getValues);

提前致谢

最佳答案

尝试更改此行

 $('.displayCheck').html(result.join(' '));

 $('.displayCheck').html(result.sort().join(' '));

Fiddle

编辑:关于根据单词后面的数字进行排序的问题。

改变

$('.displayCheck').html(result.sort().join(' '));

$('.displayCheck').html(result.sort(function (a, b) {      
return +a.split(' ')[1] - +b.split(' ')[1];
}).join(' '));

Fiddle

以及您可以更改的后续示例:

$('.displayCheck').html(result.sort(function (a, b) {      
return +a.split(' ')[1] - +b.split(' ')[1];
}).join(' '));

$('.displayCheck').html(result.sort(function (a, b) {      
return +a.split(' ')[a.split(' ').length-1] - +b.split(' ')[b.split(' ').length-1] ;
}).join(' '));

Fiddle

我会考虑更改存储结果数组的方式。 var result = []; 可能会将其更改为带有 text, value 的对象数组,例如:

var results = [
{
"text": theTextOfTheOption,
"value": theValueOfTheOption
},
{
...
}
];

然后您可以根据进行排序,而不是对结果数组中的字符串进行拆分。

关于javascript - 句子的正确顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28568338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com