I want to create a settings-dialog in my wicket page. I created a ModalWindow that contains a form to achieve this. This works great, the dialog shows up and it contains the form but now I need to return some of these values in the form back to the caller page. Is there someone who could give me pointers on how to do this?
Thanks in advance.
Quote from ModalWindow API:
"If you want to use form in modal window component make sure that you
put the modal window itself in another form (nesting forms is legal in
Wicket) and that the form on modal window is submitted before the
window get closed"
This way when you submit the form in the modal window actually the parent form gets submitted and you get the values transferred.
Related
I have a multistep Drupal 7 form. I'd like to show it in a Bootstrap Popup.
This form works fine on a normal page however when I put it into a Bootstrap popup it closes the popup when the first button is pressed.
I use drupal_render(drupal_get_form('MYFORMNAME_form')) to put the form into the popup body.
How can I make this multistep form work properly in the popup?
when you say bootstrap popup, do you mean a modal window (http://getbootstrap.com/javascript/#modals)? Modals in bootstrap are defined inside the body of the page and just hidden/shown as needed. If you want one to act as its own window, you need an iframe in it, because submitting the form will not trigger whatever mechanism you put in place to show the modal dialog in the first place.
Another option is to use code to re-show the modal, with the form at whatever stage it is at, with each page load (next button, etc.)
A last option is to do all of the form navigation via AJAX. Then you don't ever need to put the form inside an iframe nor include code to re-show the modal with each submission of the form, since the page never gets refreshed.
IMHO the iframe is easiest, and a decent option if you don't have any qualms about iframes. You just need to place the form in a separate page and include it inside the iframe. Some theming work will enable you to turn off the normal page chrome that will make your modal look like a miniature version of your site -- you probably don't want your header, navbar, footer, etc. inside the modal.
You could use the Popup forms module. It claims:
Works well with multi-step forms. Just don't add [the] "Next" button id to
[the] 'close_buttons' array to keep [the] popup open [when navigating between steps].
This solution is not using a Boostrap Modal ("Bootstrap popup") though rather a jQuery UI dialog. It requires a bit of custom coding to use this module. Example code is provided on the project page.
I have a Microsoft Access form which I use for entering client information:
First name
Last name
etc..
My problem is when I tab away from the Access Form to view the information which needs to be entered, the focus is lost in access. I need to click the form with the mouse to regain the focus.
This is very annoying!
Any help here?
AS far as I know, the focus of an access object is lost when you clic anything outside the object... that includes forms.
I can suggest you two ways of tacling this:
Use a control (combo box or list box) inside your form, so you can view the data you need.
Use a "pop up" form: you can create a form with the data you need, and a button inside your main form that opens this "pop up" form. You can specify in VBA if you want your form to open as a pop-up... if I remeber correctly, is something like this:
...
docmd.openform("frmYourForm",,,acDialog)
...
Hope this helps you
I have a very strange problem.
Recently I've created an upload page using jquery form submit on an iframe (I don't want to refresh the page) and it worked perfectly.
When I put this code on my real page a weird problem appears.
I have a button with this code:
("#upload_button").click(function(){
$("form").submit();
})
But when I click it the whole page is refreshing and my user session disappears.
What could do this?
PS: My initial version works perfectly.
Oh yes.If I put a submit button it works too.But I want to do this submit with jquery on a div
Thank you!
Try to use not form tag, but form id parameter. Smth like $('#MyForm'). Using it this way will make you sure you are calling correct form.
First I created a form in Orbeon Forms with Form Builder. Next I made it a multi-page form as described in Create a wizard or multi-page form with Form Builder.
The problem I'm facing is that when submitting the form, validation only occurs on the currently visible sections. When submitting, I would like all sections to be validated even though only one section may be visible. What would be the best way to achieve this?
I would recommend you change the code of your "Next" button so it doesn't switch to the following page if there are errors on the current page. You can do so by adding an if "guard" on the <xforms:setvalue> inside the "Next" button, that reads:
if="xxforms:instance('fr-error-summary-instance')/valid = 'true'"
This will also make things easier for users: if you let them navigate to page 2 while there are errors on page 1, when they try to save while on page 2, you will somehow have to tell them that the error is on a previous page, and provide a way for them to navigate to that page.
I have written an panel which supports file / image uploads. So the panel is a simple plain form. The panel works in a normal Wicket page.
What I would like to do now:
I would like to use the panel in a modal window. The panel is displayed correctly. However, when I submit it / upload a new file, my browser prompts whether or not I would like to leave the page. The page which contains the DIV of the modal window is a form itself.
My research didn't turn up any interesting information about forms in a modal window expect it has to be self contained (nested form). I think this prerequisit is met.
Is there any information available, what I have done wrong? Any tutorials?
You need to use an AjaxSubmitButton (or AjaxSubmitLink) to submit your form. The problem is that the modal window requires Ajax communication. If you use the window to just reprocess a whole page and don't care about the Ajax'ness, then you can override the ModalWindow#getCloseJavaScript() method.
As Martijn pointed out, the modal window relies on AJAX communication. So use AjaxSubmitButton or equivalents. When components in the main window need to be updated after the submit of the modal window, this can be done by adding them to the AjaxRequestTarget.
However when it comes to multi part forms (file uploads) this does not work quite. Apparently multi part doesn't play nicely with AJAX. One has to do an IFrame trick as pointed out e.g. here: http://www.dooriented.com/blog/2008/04/23/wicket-ajax-like-file-upload-on-a-modal-window/