Tengo una cadena de propiedades de estilo como la siguiente
var style='max-width: 125px; height: auto; object-fit: cover; width: 125px; margin-left: auto; margin-right: auto;'Las propiedades pueden ser cualquiera. Quiero verificar si max-width incluye, y si incluye, se eliminará. Pero no pude resolver el problema.
var imgmaxwidth = style; if (imgmaxwidth.includes("max-width")) { self.$dialog.find('.note-image-attributes-style-maxwidth').val(value of string max-width); }Quiero tomar este valor de ancho máximo y luego eliminar esta propiedad de la cadena.
En la cadena final será
height: auto; object-fit: cover; width: 125px; margin-left: auto; margin-right: auto;Gracias por adelantado
Prueba lo siguiente:
var style = 'max-width: 125px; height: auto; object-fit: cover; width: 125px; margin-left: auto; margin-right: auto;' var styleArr = style.split(';') var res = styleArr.filter(function (value) { return !value.includes('max-width'); }); style = res.join(';'); console.log(style); .as-console-wrapper { max-height: 100% !important; top: 0; }var style = $('p').attr('style'); var parts = style.split(';'); var newstyle=[]; for (i=0; i < parts.length; i++) { if (parts[i].split(':')[0].toLowerCase().trim() != 'max-width') { newstyle.push(parts[i]); } } $('p').attr( 'style', newstyle.join(';'));Corregí los casos que se perderían si hubiera espacios en blanco al principio o al final, o problemas de casos. (impulsado con comentarios de @Useless Code)