De esta manera, solo encuentro el div necesario, si el "data-content" contiene la palabra completa .
var input = "TestText123"; var found = $("#list").find(".box[data-name='" + input + "']").addClass("found");Pero también quiero encontrar este div si mi "entrada" solo contiene una parte correcta (mín. 5 caracteres).
Es interesante que esto funcione, si no uso el método de "datos" (pero lo necesito).
var found = $("#list").find(".box:contains('" + input + "')").addClass("found");¿Cómo modificar el método de "datos" en jQuery, como lo necesito?
Agregue un asterisco antes del signo igual: [data-name*=...] .
Nota al margen: el argumento de addClass no debe tener un punto, así que solo addClass("found") :
var input = "TestText123"; var found = $("#list").find(".box[data-name*='" + input + "']").addClass("found"); .found { background: yellow } <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul id="list"> <li class ="box" data-name="WhatTestText12345">should match</li> </ul>