B
blankito1998
Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
como veo en el console todas las menciones de prosear?Para realizar una sub-búsqueda con todas las menciones en tu llamada Ajax, puedes modificar la forma en que se construye el objeto de datos que envías con la solicitud. Debes recopilar todas las menciones que hayas encontrado y luego enviarlas como un parámetro adicional.
Aquí tienes cómo puedes hacerlo:
1. Reuniendo Todas las Menciones: Reúne todas las menciones en un array y luego envíalo en tu solicitud Ajax.
2. Modificar la Lógica de la Llamada Ajax: En lugar de enviar solo la última mención, también incluye el array de menciones.
Aquí te dejo el código actualizado para lograr esto:
### Código Modificado
JavaScript:$(document).ready(function() { $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); // Eliminar el intercomu existente $(".intercomu").remove(); // Buscar coincidencias de menciones que comiencen con '@' var matches = inputValue.match(/@(\w+)/g); // Si hay coincidencias if (matches) { var lastMention = matches[matches.length - 1]; // obtener la última mención // Verifica si hay texto después de la última mención var lastMentionIndex = inputValue.lastIndexOf(lastMention); if (lastMentionIndex + lastMention.length < inputValue.length && !inputValue[lastMentionIndex + lastMention.length].trim()) { return; // Si el carácter después de la mención es un espacio, no mostramos el intercomu } // Realizar la llamada AJAX $.get("../hola.php", { searpro: lastMention, prosear: matches // Enviar todas las menciones }, function(data) { const modifiedData = data.replace(/<cite class="lobre" /g, '<cite class="lobre" datainput="'+dataid+'" '); $('<div class="intercomu cls' + dataid + '">Estás buscando ' + lastMention + ' ' + modifiedData + '</div>').insertAfter($(this)); }.bind(this)); // Mantiene el contexto del input actual } }); });
### Cambios Realizados:
1. Reunir Todas las Menciones: Estamos usando el arraymatchesque ya contiene todas las menciones encontradas en el texto del input. Lo pasamos directamente como el valor del parámetroprosear.
2. Envío de Datos en la Llamada Ajax: La llamada a$.getahora incluye tantosearpro(la última mención) comoprosear(todas las menciones).
### Notas Adicionales:
- Asegúrate de que el servidor esté preparado para manejar el nuevo parámetro
prosearen la llamada PHP, donde puedes realizar la lógica adicional que necesites en función de todas las menciones obtenidas.- Dependiendo de la lógica de tu aplicación, podrías querer convertir el array de menciones a una cadena (por ejemplo, unirse con comas) si es necesario para el procesamiento del lado del servidor.
Si necesitas más ayuda o alguna modificación específica, ¡házmelo saber!

