If you’re using jQuery UI Dialog, you know sometimes there’s a need to access dialog’s button objects after the dialog has already been created. This can be easily done via
$(dialogElement).dialog("option").buttons
command. One possible scenario where this can be useful – is executing specific button click function when user clicks [X] in dialog title. Imagine that buttons are set via array and the last object in this array is always something like CANCEL or NO or DISREGARD – and you want to simulate click of that last button whenever user clicks [X]. Using above command it’s pretty straightforward:
$(oDivDialog).dialog({ //... some dialog parameters buttons: arrayOfButtonObjects, //... some more parameters close: function () { var buttons = $(this).dialog("option").buttons; buttons[buttons.length - 1].click(); } })
Line 5 begins close
event which is called on dialog closing.
Line 6 retrieves array of buttons for the dialog
Line 7 calls click()
function of the last button in the array