Preciso de ajuda com duas coisas:
1- Tenho uma tabela vinculada a uma coleção. Coloquei botões com as opções de excluir e de editar as linhas da tabela, conforme na imagem:

Eu gostaria que esses botões aparecessem ao lado da linha que eu clico, conforme o X na imagem.
2- Estou com um problema com esses mesmos botões em que na primeira vez que eu clico ele executa o comando, mas na segunda vez que eu clico ele executa o comando duas vezes, e assim sucessivamente.
$w.onReady(function () { $w("#table1").collapse(); $w('#button5').hide() $w('#button6').hide() $w('#button7').hide() $w('#button8').hide() $w('#button9').hide() $w('#button10').hide() $w('#group2').hide() //SELEÇÃO DE LINHA NA TABELA let rowData $w('#table1').onRowSelect((event) => { $w('#button5').show("fade", { "duration": 200 }); $w('#button6').hide("fade", { "duration": 200 }); $w('#button7').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); $w('#button8').show("fade", { "duration": 200 }); $w('#button9').hide("fade", { "duration": 200 }); $w('#button10').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); rowData = event.rowData //BOTÃO DE APAGAR $w('#button5').onClick(() => { $w('#button5').hide("fade", { "duration": 200 }); $w('#button8').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); $w('#button6').show("fade", { "duration": 200 }); $w('#button7').show("glide", { "duration": 200, "distance": 45, "angle": 270 }); $w('#button9').hide("fade", { "duration": 200 }); $w('#button10').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); }) //CONFIRMAR $w('#button6').onClick(() => { let ano = parseFloat($w("#dropdown2").value); let sec = $w("#dropdown1").value.split("ç").join("c"); let doc = $w('#radioGroup1').value; let secAnoDoc = `${sec}${ano}${doc}`; wixData.remove(secAnoDoc, rowData._id) .then(() => { $w('#button6').hide("fade", { "duration": 200 }); $w('#button7').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); }) .then(funcao1) }) //CANCELAR $w('#button7').onClick(() => { $w('#button6').hide("fade", { "duration": 200 }); $w('#button7').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); }) //BOTÃO DE EDITAR $w('#button8').onClick(() => { $w('#input1').value = rowData.destino $w('#textBox1').value = rowData.descricao $w('#group2').show("fade", { "duration": 200 }) $w('#button5').hide("fade", { "duration": 200 }) $w('#button6').hide("fade", { "duration": 200 }); $w('#button7').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }); $w('#button8').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }) $w('#button9').show("fade", { "duration": 200 }) $w('#button10').show("glide", { "duration": 200, "distance": 45, "angle": 270 }) }) //CONFIRMAR $w('#button9').onClick(() => { let ano = parseFloat($w("#dropdown2").value); let sec = $w("#dropdown1").value.split("ç").join("c"); let doc = $w('#radioGroup1').value; let secAnoDoc = `${sec}${ano}${doc}`; wixData.query(secAnoDoc) .eq("_id", rowData._id) .find() .then((res) => { if (res.items.length > 0) { let item = res.items[0]; item.destino = $w('#input1').value; item.descricao = $w('#textBox1').value; wixData.update(secAnoDoc, item); $w('#group2').hide() $w('#button9').hide("fade", { "duration": 200 }) $w('#button10').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }) } }) .then(funcao1) }) //CANCELAR $w('#button10').onClick(() => { $w('#button9').hide("fade", { "duration": 200 }) $w('#button10').hide("glide", { "duration": 200, "distance": 45, "angle": 270 }) $w('#group2').hide() }) })
})
Na prática está funcionando bem e não interfere no uso, mas caso exista algum jeito de corrigir isso eu gostaria de saber.