Estoy creando un contenedor de tabla, al que estoy agregando un widget de selección,
var layout1 = new dojox.layout.TableContainer({
showLabels: true,
orientation: "horiz",
cols : 2,
spacing: 5,
style: "border: solid 1px LightBlue;",
customClass : "tableContainer"
});
layout.placeAt(divContentNode);
A continuación se muestra mi widget de selección:
var ran = new dijit.form.Select(
{
id :"srz102" ,
name : "ZEND100",
title : "VAPORTforVA",
maxHeight : "100",
style:"width: 150px",
required:true,
options:v4
}
);
layout1.addChild(ran);
Pero con esto no obtuve el título para el widget seleccionado, así que agregué
layout1.layout();
que muestra el título para seleccionar widget
Ahora, cuando intento destruir el widget de selección, no puedo eliminar el título
dijit.byId("srz102").destroyRecursive();
Respuestas
0 para la respuesta № 1Supongo que intentas apoderarte del nodo seleccionado y destruirlo. Es por eso que su título no se elimina correctamente. En su lugar, debe intentar atrapar a su padre y luego intentar destruir al niño.
Si está utilizando dojo 1.7 + (AMD), puede usar:
require(["dojo/dom-construct"], function(domConstruct){
// Destroy a node byId:
domConstruct.destroy("id");
})
Para la eliminación recursiva puede utilizar:
dojo.query("id").forEach(dojo.destroy);
Sin embargo, debe atravesar el nodo principal y eliminar cada uno de ellos.
Just FYI dojo.query es muy útil para controlar cualquier nodo que no esté limitado a id, puedes hacerlo mediante la clase css como se muestra a continuación
dojo.query(".cssClass")
Ref. Adicional:http://dojotoolkit.org/reference-guide/1.7/dojo/destroy.html