I would setup the modal and create your form on the client side on the map click rather than going back to the server to render the form. Since you don't need to hit the server to show the form, doing so will needlessly couple your client side and server side logic. And yes, you can just store the value of you marker position in a hidden field (or hidden fields, if you want to store latitude and longitude separately).
Edit:
I'm not really sure about how your architecture is setup, but on the javascript side you can add pointvalue directly into your form once you open the dialog. The following is a very rough example, and obviously won't be directly applicable in map context, but it may give you an idea of where to start. So let's say you have the following html from rendering your Django-form (along with a button to click):
<form id="dialogform" style="display: none">
<input type="hidden" id="point" name="point"/>
<input type="text" id="other" name="other"/>
</form>
<button id="map">Show Dialog</button>
You could then do something like this with your javascript:
// rather than bind a button called #map, you
// would bind to whatever map click event is available
$('#map').click(function (event) {
// get the point value from whatever map API you are using
var pointval = 123;
// set the value of the hidden input
$('#point').val(pointval);
// open the dialog
$( "#dialogform" ).dialog();
});
You can then setup whatever logic you want to submit the dialog form. The hidden value will be submitted along with the rest of your inputs.