javascript - how to add $_POST['submit'] in ajax jquery or what is the best way to do this..?
Get the solution ↓↓↓index.php
<form id="myForm" action="test2.php" method="POST">
<input type="submit" value="Print 1" name="submit" id="submit">
<input type="submit" value="Print 2" name="submit2" id="submit2">
</form>
<div id="ack"></div>
here's my script
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript" src="scripts/login_script.js"></script>
test2.php
<?php
if(isset($_POST['submit'])){
echo "1"; // i want to show this everytime i click submit (not working)
} // or what is the proper way to do this..
if(isset($_POST['submit2'])){
echo "2"; // i want to show this everytime i click submit2 (not working)
} // or what is the proper way to do this..
?>
login_script.js
$("#submit, #submit2").click( function() {
$.post( $("#myForm").attr("action"),
$("#myForm :input").serializeArray(),
function(data) {
$("#ack").empty();
$("#ack").html(data);
});
$("#myForm").submit( function() {
return false;
});
});
if i remove the if(isset($_POST['submit'])).... its working... so what is the proper way to do this..? sorry im noob in ajax and jquery
Answer
Solution:
No, you have to realize that<input type="submit"
and<button> submit
is not included in.serializeArray()
, you'll have to just build the data object to be passed:
$("#submit, #submit2").click( function() {
var data = null;
if($(this).attr('id') == 'submit') {
values = {'submit': true};
} else {
values = {'submit2': true};
}
$.post( $("#myForm").attr("action"), values,
function(data) {
$("#ack").empty();
$("#ack").html(data);
});
});
Answer
Solution:
try with this:
$("#submit, #submit2").click( function() {
var formData = $(this).closest('form').serializeArray();
formData.push({ name: this.name, value: this.value });
$.post( $("#myForm").attr("action"),formData,
function(data) {
$("#ack").empty();
$("#ack").html(data);
});
$("#myForm").submit( function() {
return false;
});
});
Answer
Solution:
Yes I just try it and below code is working for me please check.
index.php
<form id="myForm" action="test2.php" method="POST">
<input type="submit" value="Print 1" name="submit" id="submit">
<input type="submit" value="Print 2" name="submit2" id="submit2">
</form>
<div id="ack"></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$("#submit, #submit2").click( function() {
$.post( $("#myForm").attr("action"),
$("#myForm :input").serializeArray(),
function(data) {
$("#ack").empty();
$("#ack").html(data);
});
$("#myForm").submit( function() {
return false;
});
});
</script>
test.php
<?php
if(isset($_POST['submit'])){
echo "1"; // i want to show this everytime i click submit (not working)
} // or what is the proper way to do this..
if(isset($_POST['submit2'])){
echo "2"; // i want to show this everytime i click submit2 (not working)
} // or what is the proper way to do this..
?>
Answer
Solution:
In the post it user name instead of the ID. Please try code below hope it will help you.
<form id="myForm" action="test2.php" method="POST">
<input type="submit" value="Print 1" name="submit" id="submit">
<input type="submit" value="Print 2" name="submit2" id="submit2">
</form>
Share solution ↓
Additional Information:
Link To Answer People are also looking for solutions of the problem: to enable extensions, verify that they are enabled in your .ini files
Didn't find the answer?
Our community is visited by hundreds of web development professionals every day. Ask your question and get a quick answer for free.
Similar questions
Find the answer in similar questions on our website.
Write quick answer
Do you know the answer to this question? Write a quick response to it. With your help, we will make our community stronger.