Estou fazendo uma widget e na superwidget necessito passar o resultado de um dataset para campos do formulário pai filho, mas não conseguindo: for (var i = 0; i < wtotal; i++) { var descr=datasetCardapio.values[i]['descricao']; //como exemplo, passar essa variável. }. Tentei também passar para um campo input qualquer de teste utilizando: $('#resultado_'+this.instanceId), mas também não estou conseguindo. Como fazer?
Sua pergunta está bem confusa, pode mandar o código? Você quer passar os valores do widget para outro widget? O que você prentende fazer? Onde está essa tabela paixfilho? Você quer passar um valor para um registro ou um valor para vários ou vários para vários?
DICA: Tente usar as formatações de texto quando usar código
A tabela está no arquivo view.ftl . Abaixo a superwidget :
var PH_Loja3 = SuperWidget.extend({
message: null, init: function () { this.carregaCardapio(); },
bindings: {local: {} },
carregaCardapio: function() {
var datasetCardapio = DatasetFactory.getDataset(“ds_Produtos”, null, null, null);
var wtotal=datasetCardapio.values.length;
for (var i = 0; i < wtotal; i++) {
var descr=datasetCardapio.values[i][‘descricao’];}
}});
Para setar o valor do resultado você deve jogar esse valor vindo do DataSet para o seu campo desejado. Sua variável descr sera enviada para a sua tabela paiXfilho pelo id do campo.
var descr=datasetCardapio.values[i]['descricao'];
$('#resultado___'+numLinha+'_'+this.instanceId);
Lembrando que ao criar uma nova linha da tabela paiXfilha ele usa o id colocado no registro padrão e adiciona um "___1" com o sequencial da linha da tabela.
Caso não haja um registro e você precise adicionar um, você deve utilizar o método wdkAddChild para adicionar antes.