# Ottieni i dati della casella di testo dopo aver premuto il pulsante nel plugin

**URL:** <https://meta.discourse.org/t/get-text-box-data-after-pressing-button-in-plugin/337702>\
**Category:** Development\
**Created:** [22 Novembre 2024, 8:18am UTC](https://meta.discourse.org/t/get-text-box-data-after-pressing-button-in-plugin/337702 "2024-11-22T08:18:47Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![Alteras](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alteras/32/179824_2.png) [@Alteras](https://meta.discourse.org/u/Alteras)\
**Post date:** [23 Novembre 2024, 9:05pm UTC](https://meta.discourse.org/t/get-text-box-data-after-pressing-button-in-plugin/337702/3 "2024-11-23T21:05:29Z")

</div>

Sembra che quello che stai cercando sia creare un’API in Ruby che il JS possa chiamare. Un esempio è il plugin [Data Explorer](https://meta.discourse.org/t/32566?silent=true), che implementa un’API di input utente con ambito di autorizzazione amministrativa sul lato Ruby.

> <https://github.com/discourse/discourse-data-explorer/blob/main/config/routes.rb#L3-L16>

> <https://github.com/discourse/discourse-data-explorer/blob/main/app/controllers/discourse_data_explorer/query_controller.rb>

Il JS per il [data explorer](https://meta.discourse.org/t/32566?silent=true) è piuttosto corposo, quindi fornirò solo un esempio semplificato di ciò di cui probabilmente avresti bisogno.

```js
import { ajax } from "discourse/lib/ajax";

...
  @action
  sendTextboxData() {
    ajax("/endpoint", {
        type: "POST",
        data: {
          key: "value"
        },
    }).then((result) => {
        // fai qualcosa con il risultato
    };
  }

```

Puoi fare la stessa cosa con un `fetch()` nativo di JS, ma sembra che la funzione `ajax()` fornita da Discourse gestisca alcune piccole cose a livello di codice.

Se il tuo codice Ruby è abbastanza leggero, puoi probabilmente inserirlo interamente in un unico file per il controller. Altrimenti, puoi organizzarlo come preferisci.

---

_[View the full topic](https://meta.discourse.org/t/get-text-box-data-after-pressing-button-in-plugin/337702)._
