Reputation: 10771
I have the following in my head:
<SCRIPT>
function submitFunction(i) {
if (i==1) {
alert('1');
document.sales_order_details.action="/sales/_order";
document.sales_order_details.submit()
}
if (i==2) {
alert('2');
document.sales_order_details.action="/sales/delete_order";
document.sales_order_details.submit()
}
}
</SCRIPT>
and the following in my body:
<form id="sales_order_details" action="/sales/delete_order" method="post">
<INPUT TYPE="button" VALUE="Edit Order" onClick="submitFunction(1)">
<INPUT TYPE="button" VALUE="Delete Order" onClick="submitFunction(2)">
</form>
The alert for '2' or '1' shows correctly but the form does not submit.
any advice.
Thanks
Upvotes: 0
Views: 69
Reputation: 9706
Change
document.sales_order_details.submit()
to
document.forms['sales_order_details'].submit();
and your form will submit correctly.
Upvotes: 1
Reputation: 1962
You have accessed the java script object hierarchy wrongly. after document
you should access form
to get your code work see the following: And you should use name
attribute in form
tag to work this code.
<SCRIPT>
function submitFunction(i) {
if (i==1) {
alert('1');
document.form.sales_order_details.action="/sales/_order";
document.form.sales_order_details.submit()
}
if (i==2) {
alert('2');
document.form.sales_order_details.action="/sales/delete_order";
document.form.sales_order_details.submit()
}
}
</SCRIPT>
the html form:
<form name="sales_order_details" action="/sales/delete_order" method="post">
<INPUT TYPE="button" VALUE="Edit Order" onClick="submitFunction(1)">
<INPUT TYPE="button" VALUE="Delete Order" onClick="submitFunction(2)">
</form>
Or:
you could use the form index number to access the form object in javascript. like document.form[0].action
Upvotes: 1
Reputation: 15138
Try this in your javascript function instead:
function submitFunction(i) {
var form = document.getElementById('sales_order_details');
if (i == 1)
form.action = "/sales/_order";
else if (i == 2)
form.action = "/sales/delete_order";
form.submit();
}
Upvotes: 1