Tengo una pregunta acerca de que knockout no representa correctamente los atributos html. Tengo una etiqueta de intervalo que se llena con datos usando knockout JS.
<span id="s34" data-bind="html: $parent.Branch.TextComments"></span>TextComments es dinámico y, a veces, solo contiene texto. Otras veces texto y etiquetas < a>. Por ejemplo:
This is text example of TextComment. Access google at <a href="https://www.google.com/" target="_blank">Goole link</a>. Thank you!Cuando la página se vuelve a ver, el enlace se vuelve a ver correctamente como una URL, pero cuando hago clic en él, no abre una nueva pestaña, sino que redirige la página a Google en lugar de abrir una nueva pestaña que debería lograr target="_blank".
¿Algunas ideas?
¡Gracias por adelantado!
Tenía curiosidad si realmente no funciona.
Configuré este fragmento de código mínimo y todo funciona como se esperaba en mi entorno local
var system = { viewModel:function (data) { var self = this; self.texts = ko.observableArray([ "text 21321", 'text <a href="https://google.com" target="_blank"> with target blank </a> ', 'text <a href="https://google.com" > without target blank </a> ', 'text 789' ]); } } var vm = new system.viewModel(); ko.applyBindings(vm); <script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script> <div data-bind="foreach:texts"> <span data-bind="html:$data"></span> <br> </div> <a href="https://google.com" target="_blank"> Test stack-snippet target-blank </a>Entonces, en este fragmento, los enlaces tampoco se abren correctamente para mí, pero tal vez esta sea una restricción del fragmento. Vea el enlace normal que agregué con target="_blank" tampoco se abre en un fragmento. en mi entorno local todos los enlaces con target="_blank" se abren en una nueva pestaña mientras que la otra no