我想用新数组替换我现有的数组。但是,我不能添加/替换超过2个数组值。在2个值之后,即使变量在控制台中显示多个值,它也会被卡住。
function add_comments_in_editor() {
var comment = '';
// Get selected Action
$('input[type=radio]:checked').each(function() {
comment = '<strong>' + actions[$(this).attr('id')] + '</strong>';
window.radioNew = '<strong>' + actions[$(this).attr('id')] + '</strong>';
});
// Get selected reason
var arrCheck = [];
window.newCheck = [];
var arrOld = [];
$('.voting_parameters input[type=checkbox]:checked').each(function() {
var voting_parameter_id = $(this).attr('id');
voting_parameters_array[$(this).attr('id')] + '</li>';
arrCheck.push('<li>' + voting_parameters_array[$(this).attr('id')]);
window.newCheck = arrCheck;
// Get selected reasons parameters
$(this).parent().next('.voting_parameter_reasons').find('input:checkbox').each(function() {
if ($(this).is(':checked')) {
var voting_parameter_reasons_id = $(this).attr('id');
var reason_index = (voting_parameter_reasons_array[voting_parameter_id].map(function(item) {
return item.voting_parameter_reason_id;
}).indexOf(voting_parameter_reasons_id))
voting_parameter_reasons_array[voting_parameter_id][reason_index]['reason_name'] + '</li></ul>';
}
});
var radioOld = window.oldRadio || '';
var checkOld = window.oldCheck || '';
tinyMCE.activeEditor.setContent(tinyMCE.activeEditor.getContent().replace(checkOld, window.newCheck).replace(radioOld, window.radioNew));
window.oldRadio = '<p><strong>' + actions[$('input[type=radio]:checked').attr('id')] + '</strong></p>';
arrOld.push('<li>' + voting_parameters_array[$('.voting_parameters input[type=checkbox]:checked').attr('id')]);
window.oldCheck = arrCheck;
}我只需要知道为什么我不能替换超过2个值。
发布于 2022-07-18 21:27:50
String.prototype.replaceAll()
参考文献:https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll
tinyMCE.activeEditor.getContent().replaceAll(checkOld, window.newCheck)
https://stackoverflow.com/questions/73028783
复制相似问题