BotBeta
Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Usuario popular!
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Suscripción a IA
Sí, puedes manejarlo limpiando todos los enlaces previamente creados antes de agregar los nuevos. Aquí te dejo la forma de hacerlo:oks pero puedes hacer que si el usuario escribe otro arroba o escribe un espacio desaparezca el primer estas buscando?
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
let nawereStatus = {1: [], 2: []};
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
if(nawereStatus[dataid].length) {
nawereStatus[dataid].forEach((element) => element.remove());
nawereStatus[dataid] = [];
}
var matches = inputValue.match(/@\w+/g);
if(matches) {
matches.forEach(function(match) {
let element = $('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this));
nawereStatus[dataid].push(element);
}, this);
}
});
});
</script>
</body>
</html>
perfecto todo bien, pero puedes hacer que tmb se elimine el intercomu?Sí, puedes manejarlo limpiando todos los enlaces previamente creados antes de agregar los nuevos. Aquí te dejo la forma de hacerlo:
Ahora, cada vez que ingreses texto, este código eliminará todos los enlaces existentes antes de agregar los nuevos.HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ let nawereStatus = {1: [], 2: []}; $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); if(nawereStatus[dataid].length) { nawereStatus[dataid].forEach((element) => element.remove()); nawereStatus[dataid] = []; } var matches = inputValue.match(/@\w+/g); if(matches) { matches.forEach(function(match) { let element = $('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this)); nawereStatus[dataid].push(element); }, this); } }); }); </script> </body> </html>
Claro, para eliminar todos los elementos de la clase 'intercomu' antes de agregar nuevos elementos, puede incluir una línea de código adicional. Aquí está la forma de hacerlo:perfecto todo bien, pero puedes hacer que tmb se elimine el intercomu?
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
let nawereStatus = {1: [], 2: []};
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
if(nawereStatus[dataid].length) {
nawereStatus[dataid].forEach((element) => element.remove());
nawereStatus[dataid] = [];
}
$(".intercomu").remove(); // Línea añadida para eliminar todos los elementos 'intercomu'
var matches = inputValue.match(/@\w+/g);
if(matches) {
matches.forEach(function(match) {
let element = $('<a class="intercomu cls' + dataid + '">estas buscando '+match+'</a>').insertAfter($(this));
nawereStatus[dataid].push(element);
}, this);
}
});
});
</script>
</body>
</html>
no remueve el <a> con el class intercomu, que debo hacer?Claro, para eliminar todos los elementos de la clase 'intercomu' antes de agregar nuevos elementos, puede incluir una línea de código adicional. Aquí está la forma de hacerlo:
HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ let nawereStatus = {1: [], 2: []}; $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); if(nawereStatus[dataid].length) { nawereStatus[dataid].forEach((element) => element.remove()); nawereStatus[dataid] = []; } $(".intercomu").remove(); // Línea añadida para eliminar todos los elementos 'intercomu' var matches = inputValue.match(/@\w+/g); if(matches) { matches.forEach(function(match) { let element = $('<a class="intercomu cls' + dataid + '">estas buscando '+match+'</a>').insertAfter($(this)); nawereStatus[dataid].push(element); }, this); } }); }); </script> </body> </html>
Esta línea adicional removerá todos los elementos 'intercomu' existentes cada vez que el usuario ingrese texto.
Mis disculpas por el malentendido anterior. De hecho, el código que proporcioné debería eliminar todos los elementos con la clase 'intercomu'. Sin embargo, si aun así no funciona, podría haber un problema con la sincronización o con los selectores. Prueba con este código modificado:no remueve el <a> con el class intercomu, que debo hacer?
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
$(".intercomu").remove(); // Línea modificada para eliminar todos los elementos 'intercomu'
var matches = inputValue.match(/@\w+/g);
if(matches) {
matches.forEach(function(match) {
$('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this));
}, this);
}
});
});
</script>
</body>
</html>
quiero es que cuando el usuario escriba un @ o un espacio el intercomu que aparecio anteriormente desaparezcaMis disculpas por el malentendido anterior. De hecho, el código que proporcioné debería eliminar todos los elementos con la clase 'intercomu'. Sin embargo, si aun así no funciona, podría haber un problema con la sincronización o con los selectores. Prueba con este código modificado:
HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); $(".intercomu").remove(); // Línea modificada para eliminar todos los elementos 'intercomu' var matches = inputValue.match(/@\w+/g); if(matches) { matches.forEach(function(match) { $('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this)); }, this); } }); }); </script> </body> </html>
En este código, eliminamos la matriz 'nawereStatus' porque no es necesaria. Ahora, a cada entrada del usuario, todos los elementos con la clase 'intercomu' se eliminarán antes de agregar los nuevos.
Entendido, aquí está el código modificado para eso. Este código eliminará todos los elementos con la clase 'intercomu' cada vez que se escriba un '@' o un espacio.quiero es que cuando el usuario escriba un @ o un espacio el intercomu que aparecio anteriormente desaparezca
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
if(inputValue.endsWith('@') || inputValue.endsWith(' ')) {
$(".intercomu").remove(); // Elimina todos los elementos 'intercomu'
}
var matches = inputValue.match(/@\w+/g);
if(matches) {
matches.forEach(function(match) {
$('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this));
}, this);
}
});
});
</script>
</body>
</html>
creo que hay un error, cuando escribo @ y escribo el intercomu crea otros cuando sigo escribiendoEntendido, aquí está el código modificado para eso. Este código eliminará todos los elementos con la clase 'intercomu' cada vez que se escriba un '@' o un espacio.
HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); if(inputValue.endsWith('@') || inputValue.endsWith(' ')) { $(".intercomu").remove(); // Elimina todos los elementos 'intercomu' } var matches = inputValue.match(/@\w+/g); if(matches) { matches.forEach(function(match) { $('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this)); }, this); } }); }); </script> </body> </html>
Ahora, cada vez que el usuario escriba '@' o un espacio, todas las apariciones anteriores de "estas buscando" serán eliminadas.
Lamento el error. Parece que el problema puede ser causado por la creación de nuevos elementos 'intercomu' cada vez que coinciden las condiciones. Probaría comprobando si el "@" es seguido por caracteres no espaciales antes de agregar un nuevo elemento "intercomu". Aquí te dejo una posible solución:creo que hay un error, cuando escribo @ y escribo el intercomu crea otros cuando sigo escribiendo
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
if(inputValue.endsWith('@') || inputValue.endsWith(' ')) {
$(".intercomu").remove();
}
var matches = inputValue.match(/@\w+/g);
if(matches && !inputValue.endsWith('@ ')) {
$(".intercomu").remove();
matches.forEach(function(match) {
$('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this));
}, this);
}
});
});
</script>
</body>
</html>
no se eliminanLamento el error. Parece que el problema puede ser causado por la creación de nuevos elementos 'intercomu' cada vez que coinciden las condiciones. Probaría comprobando si el "@" es seguido por caracteres no espaciales antes de agregar un nuevo elemento "intercomu". Aquí te dejo una posible solución:
HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); if(inputValue.endsWith('@') || inputValue.endsWith(' ')) { $(".intercomu").remove(); } var matches = inputValue.match(/@\w+/g); if(matches && !inputValue.endsWith('@ ')) { $(".intercomu").remove(); matches.forEach(function(match) { $('<a class="intercomu cls'+dataid+'">estas buscando '+match+'</a>').insertAfter($(this)); }, this); } }); }); </script> </body> </html>
Este código creará un nuevo elemento 'intercomu' sólo si el "@" es seguido por al menos un caracter no espacial. Cada vez que el usuario escriba "@" o espacio, se eliminarán todas las apariciones anteriores de "estas buscando".
Mis disculpas por las dificultades anteriores. Aquí te dejo el código modificado. Esta vez, cuando el usuario escriba un "@" o un espacio, se eliminará el mensaje de "estas buscando" anterior.no se eliminan
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<textarea class="nawere" dataid="1"></textarea>
<textarea class="nawere" dataid="2"></textarea>
<script>
$(document).ready(function(){
$('.nawere').on('input', function() {
var inputValue = $(this).val();
var dataid = $(this).attr('dataid');
if(inputValue.endsWith('@') || inputValue.endsWith(' ')) {
$(".intercomu").remove();
return; // retorna aquí para no agregar un nuevo intercomu
}
var matches = inputValue.match(/@\w+/g);
if(matches) {
$(".intercomu").remove();
$('<a class="intercomu cls'+dataid+'">estas buscando '+matches[matches.length - 1]+'</a>').insertAfter($(this));
}
});
});
</script>
</body>
</html>
perfectooo ahora si quedoo... muchas gracias broo, cualquier cosa te avisoMis disculpas por las dificultades anteriores. Aquí te dejo el código modificado. Esta vez, cuando el usuario escriba un "@" o un espacio, se eliminará el mensaje de "estas buscando" anterior.
HTML:<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <textarea class="nawere" dataid="1"></textarea> <textarea class="nawere" dataid="2"></textarea> <script> $(document).ready(function(){ $('.nawere').on('input', function() { var inputValue = $(this).val(); var dataid = $(this).attr('dataid'); if(inputValue.endsWith('@') || inputValue.endsWith(' ')) { $(".intercomu").remove(); return; // retorna aquí para no agregar un nuevo intercomu } var matches = inputValue.match(/@\w+/g); if(matches) { $(".intercomu").remove(); $('<a class="intercomu cls'+dataid+'">estas buscando '+matches[matches.length - 1]+'</a>').insertAfter($(this)); } }); }); </script> </body> </html>
Ahora, solo se mostrará un mensaje "estas buscando" a la vez y se eliminará cuando el usuario escriba "@" o espacio.
De nada, me alegra saber que el código finalmente funcionó para ti. No dudes en volver si tienes más preguntas o necesitas ayuda adicional. ¡Feliz programación!perfectooo ahora si quedoo... muchas gracias broo, cualquier cosa te aviso
$resultado = mysqli_query($conexion,"SELECT * FROM user where nombre='hola' ORDER BY id asc LIMIT 20");De nada, me alegra saber que el código finalmente funcionó para ti. No dudes en volver si tienes más preguntas o necesitas ayuda adicional. ¡Feliz programación!
Necesitarías hacer el ordenamiento en una subconsulta primero para obtener los últimos 20 registros y luego ordenarlos en ascendente. Aquí te dejo cómo sería:$resultado = mysqli_query($conexion,"SELECT * FROM user where nombre='hola' ORDER BY id asc LIMIT 20");
como puedo hacer que esto seleccione los ultimos 20 pero que los muestre de forma asc??
$resultado = mysqli_query($conexion, "SELECT * FROM (SELECT * FROM user WHERE nombre='hola' ORDER BY id DESC LIMIT 20) sub ORDER BY id ASC");
me lo imagine jeje gracias <3Necesitarías hacer el ordenamiento en una subconsulta primero para obtener los últimos 20 registros y luego ordenarlos en ascendente. Aquí te dejo cómo sería:
PHP:$resultado = mysqli_query($conexion, "SELECT * FROM (SELECT * FROM user WHERE nombre='hola' ORDER BY id DESC LIMIT 20) sub ORDER BY id ASC");
Este fragmento de código seleccionará las últimas 20 entradas donde el nombre es 'hola', y luego las ordenará en orden ascendente por id.
¡De nada! Si tienes más preguntas en el futuro, no dudes en preguntar. ¡Feliz codificación! 💻❤️me lo imagine jeje gracias <3
como hago para que esto funcione?¡De nada! Si tienes más preguntas en el futuro, no dudes en preguntar. ¡Feliz codificación! 💻❤️
Para que el código funcione correctamente, el valor de "id" debe ser definido previamente. Luego, también necesita asegurarse de que hay un elemento con la clase "dat"+id.como hago para que esto funcione?
$(".dat"+id).attr("data-poster",+1);
var id = "algúnValor";
$(".dat"+id).attr("data-poster", 1);
pero quiero que se sume uno ejemplo si esta asi <span data-poster="22"></span> se sume 1 y de 23Para que el código funcione correctamente, el valor de "id" debe ser definido previamente. Luego, también necesita asegurarse de que hay un elemento con la clase "dat"+id.
Una forma corregida de tu código podría ser:
JavaScript:var id = "algúnValor"; $(".dat"+id).attr("data-poster", 1);
Con esta versión, "algúnValor" es un ejemplo de lo que podría ser tu ID. Reemplaza "algúnValor" con el ID correcto que corresponde al elemento en tu HTML.
Esta línea ahora seleccionará el elemento con la clase que se forma concatenando "dat" y tu ID, luego le asignará el valor 1 al atributo "data-poster".
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?