I was trying to test form submission using mouse clicks but the form doesn't seem to submit with vanilla javascript.
I'm using this simple markup and code:
<form name="form" id="price" action="" method="post">
<div class="category" name="price" value="50 dollars"
onClick="this.form.submit();"
>price</div>
</form>
<?php
echo $_POST['price'];
?>
I can submit the form with Jquery, but I don't understand why this.form.submit()
is not working with vanilla javascript? I'm using Chrome to test this.
This is an older question, but this should work
A
div
is not a form element. There is nothis.form
for it.You can still do
document.forms.form.submit()
(.form
since you havename="form"
)Your code might work if you tried something like this:
this
in your case actually refers to thediv
tag, not the document object which contains the reference to the form itself.Use following code if your form name is "filter-form"
A
div
isn't a form element (thus no.form
property) nor has it a value. I think you wanted<input>
instead of<div>
.