[Zope] Javascript question

Thomas B. Passin tpassin@mitretek.org
Tue, 14 May 2002 11:19:29 -0400


[Robert Rottermann]

> I am trying to copy data the user has entered in an >input> tag
> programmatically.
> like so
>
> function moveToZope()
> {
>   document.forms[0].data.value = document.all.doc.innerHTML
>   document.forms[0].submit()
> }
>
> this works fin to to about 2000 characters. If there is more data that is
to
> be passed, I get an sintax error upon calling submit().
> I tried both with
> document.forms[0].data
> being an <input> or a <textarea>
>

I don't have a answer for you, but I have a bit of information.  I know that
all the standard browsers (at least on Windows) can successfully take data
out of a form textarea that is much longer than 2k.

How are you sending the form data?  If you don't have an "method" attribute,
it will be a GET, and there could be a buffer size for the URL + query
string involved at the Zope end.  For something that large, you should be
using method='POST' instead.

Although this shouldn't have anything to do with you problem, I don't
understand why you are using innerHTML at all.  If the user has typed
something into an input element or a textarea, that text is available as the
value of the element.  So you can copy it by asking for its value, which
would be more portable.  And since the data would already be in a form, you
could just submit that form whithout copying anything.

Cheers,

Tom P