Ich möchte ein Eingabe-Typ-Element auf eine PHP-Seite ohne Formularübermittlung senden, nur mit Javascript. Ich habe versucht mit $ .ajax aber keine Möglichkeit. Ich weiß nicht, ob es eine Syntax oder ein logischer Fehler ist. Jemand hat mir gesagt, ich solle eine einzige PHP-Seite statt zwei machen.Senden von Daten an PHP-Popup-Seite
HTML-Seite: (aber .php)
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="../../js/jquery-3.2.0.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<style>
#prova{
padding-right: 1%;
padding-top: 1%;
}
</style>
<script>
function ajax_post(apri){
var stile = "top=10, left=10, width=650, height=600, status=no, menubar=no, toolbar=no scrollbars=no";
// Create our XMLHttpRequest object
var hr = new XMLHttpRequest();
// Create some variables we need to send to our PHP file
var url = "sperem.php";
var fn = document.getElementById("id_buyers").value;
alert(fn);
var vars = "postid="+fn;
alert(vars);
hr.open("POST", url, true);
// Set content type header information for sending url encoded variables in the request
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
// Access the onreadystatechange event for the XMLHttpRequest object
hr.onreadystatechange = function() {
if(hr.readyState == 4 && hr.status == 200) {
var return_data = hr.responseText;
document.getElementById("status").innerHTML = return_data;
}
}
// Send the data to PHP now... and wait for response to update the status div
hr.send(vars); // Actually execute the request
/*window.open(apri, "", stile);*/
document.getElementById("status").innerHTML = "processing...";
}
</script>
</head>
<body>
<div class="container">
<center><h1>Add Orders:</h1></center>
<form class="form-inline" name="ordine">
<div class="form-group" id="prova">
<label for="Buyers">ID_Buyers:</label>
<input type="text" class="form-control" placeholder="Enter IDBUYERS" id="id_buyers">
</div>
<div class="form-group" id="prova">
<input type="submit" id="bottone" value="show" onClick="ajax_post('sperem.php')"/>
</div>
</form>
<br><div id="status"></div>
</div>
</body>
</html>
Dies ist die Php Seite:
<?php
$dato = $_POST['postid'];
echo($dato);
?>
Was sagt Ihre Konsole? Überprüfen Sie auch die Registerkarte Netzwerk – Akintunde007
Ändern Sie den Typ auf Ihrer Schaltfläche auf – Akintunde007
Sie sollten überprüfen Sie Ihre Netzwerkregisterkarte wie in einem anderen Kommentar angegeben, und sagen Sie uns, was ist der Status und die Antwort der Ajax-Anfrage. (was du in 'sperem.php' zurückmachst, wird in der Antwort sein, du lädst keine neue Seite) – Kaddath