No More Posting New Topics!

If you have a question or an issue, please start a thread in our Github Discussions Forum.
This forum is closed for new threads/ topics.

Navigation

    Quasar Framework

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    Popup edit: save & cancel

    Framework
    5
    15
    3537
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jmg1340 last edited by

      Ok, understood what you said.
      I must be doing something wrong because when I cancel, it saves the new value instead of remaining the original value.

      my Code is:

            <q-td v-for="col in props.cols" v-if="col.name.startsWith('Part')" :key="col.name" :props="props">
      
              {{ col.value.valor }}
      
              <q-popup-edit 
                v-model="col.value.valor" 
                title="punts" 
                color="red-14"
                buttons
                label-set="Ok"
                label-cancel="Cancelar"
                >
                <q-input 
                  v-model="col.value.valor"
                  type="number"
                  align="center"
                  hide-underline
                  class="bg-blue-1"
                  @change="sumatori(props.row)"
                />
              </q-popup-edit>
            </q-td>
      

      … and I have no handlers for cancel and save.

      Thank you very much for your help!!

      1 Reply Last reply Reply Quote 0
      • J
        jmg1340 last edited by

        I forget this info:
        Quasar CLI… v0.17.20
        Quasar Framework… v0.17.17

        1 Reply Last reply Reply Quote 0
        • metalsadman
          metalsadman last edited by metalsadman

          @jmg1340
          your v-model should look like this in your setup v-model="props.row[col.field]" on both popup-edit and the q-input child inside it and use @input on your q-input instead of @change (Triggered on lazy model value change). example: https://codesandbox.io/s/lx5oqq4p97

          <q-td v-for="col in props.cols" v-if="col.name.startsWith('Part')" :key="col.name" :props="props">
            {{ col.value }}
            <q-popup-edit
              v-model="props.row[col.field]"
              buttons
              label-set="Ok"
              label-cancel="Cancelar">
                <q-input
                  hide-underline
                  class="bg-blue-1"
                  v-model="props.row[col.field]"
                  @input="sumatori(props.row);" />
             </q-popup-edit>
           </q-td>
          
          1 Reply Last reply Reply Quote 0
          • K
            keechan last edited by keechan

            How about if I want to add another argument to the save / cancel events?

            Is there a way so that I do not have to specify the ‘new’ and ‘old’ value and just pass in my 3rd argument?
            @save="saved(.., .., arg3)" or something like @cancel="canceled(arg3)". If that is not possible, then what argument names can I use to get the ‘old value’?

            If I do something like this, where to get initialValue value?

            <q-popup-edit buttons lazy-rule v-model="props.row.value" @save=(props.row.value, initialValue, arg3)? 
            
            ...
            methods: {
              saved (val, initialValue, arg3) {
                console.log(`original value = ${initialValue}, new value = ${val}`)
                console.log('argument3 = ' + arg3)
              },
              canceled (val, initialValue, arg3) {
                console.log(`retain original value = ${initialValue}, canceled value = ${val}`)  
                console.log('argument3 = ' + arg3)
              }
            }
            ...
            
            metalsadman 1 Reply Last reply Reply Quote 0
            • metalsadman
              metalsadman @keechan last edited by metalsadman

              @keechan use an arrow function like so. @save="(v, iv) => { someHandler(v, iv, arg1, arg2, ...) }"

              1 Reply Last reply Reply Quote 1
              • K
                keechan last edited by

                Great, it works now! Thank you!

                1 Reply Last reply Reply Quote 0
                • J
                  j-ho last edited by

                  It appears that clicking away from a popup-edit when changes have been made emits a cancel instead of save event. Is there some way to control this behavior?

                  Quasar v1.12.5

                  metalsadman 1 Reply Last reply Reply Quote 0
                  • metalsadman
                    metalsadman @j-ho last edited by

                    @j-ho 7039a2d4-b978-4fc1-93cf-87514e0fd453-image.png

                    1 Reply Last reply Reply Quote 0
                    • J
                      j-ho last edited by

                      Fantastic, can’t believe I missed that. Thanks.

                      1 Reply Last reply Reply Quote 0
                      • G
                        ghadaYoussef last edited by

                        hey all, I was wondering how to prevent closing the popup edit when clicking on enter?

                        metalsadman 1 Reply Last reply Reply Quote 0
                        • metalsadman
                          metalsadman @ghadaYoussef last edited by

                          @ghadaYoussef catch the event ie. @keydown.enter.stop.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post