getestet habe ich nur das Skript auf meinem localhost. Ich legte ajquery.php im www Verzeichnis und platziert index.html, die Ihr Skript www/Test weil nach den Ajax-Parameter im Verzeichnis enthält Sie ajquery.php angegeben haben, muss eine Ebene sein oben in der Verzeichnishierarchie.
Der Code in www/ajquery.php:
<?php print_r($_POST); ?>
Der Code in www/test/index.html:
<script type="text/javascript">
function ShowSearchResults(search_value){
var ajShowSearchResults = $.ajax({
type: 'POST',
url: '../ajquery.php',
data: {opt : 'srch', val: search_value},
dataType: "html"
});
ajShowSearchResults.done(function(data){
alert(data);
});
ajShowSearchResults.fail(function(jqXHR, textStatus) {
alert("Request failed: " + textStatus);
});
return false; // My addition
} // This Bracket You missed in the question
</script>
<form onsubmit='return ShowSearchResults($("#y").val())'>
<input type="text" name="y" id="y"/>
<input type="submit"/>
</form>
Dies ist die Ausgabe.
Jetzt können Sie sehen, dass alle POST
Daten, die Sie ist bei ajquery.php verfügbar gesendet. Das beweist, dass es kein Problem mit Ihrem Skript gibt, außer der letzten Klammer, die Sie irrtümlicherweise ausgelassen haben. Aber trotzdem kann ich riechen, dass es in der folgenden Zeile auf Ihrer Seite ein Problem geben könnte.
url: '../ajquery.php',
ajquery.php möglicherweise nicht in das übergeordnete Verzeichnis wohnend. Wenn ajquery.php im selben Verzeichnis ist, können Sie ../ajquery.php
durch ajquery.php
ersetzen oder das Beste von allem, mit der absoluten URL zu ajquery.php wie http://yourdomain.com/ajquery.php
.
Hoffnung, die Ihre Frage löst.
Frieden ...
was erwarten Sie, dass es zu tun und was schief läuft? – Alp
Erhalten Sie irgendwelche Konsolenmeldungen? – 472084