Javascript Ajax不会在几秒钟后发布到php
我正在使用ajax将变量发布到php。Php文件将这些变量写入文本文件。python脚本从文本文件中读取变量以控制两个电动机。这工作了大约15秒,但在那之后,我必须重新加载网页以再次控制。python脚本不是问题所在,因为当我在文本文件中手动编写变量时,即使网页没有这样做,它也能工作。 所以问题是,几秒钟后javascript/ajax脚本不会将变量发布到php文件中,我猜Javascript Ajax不会在几秒钟后发布到php,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在使用ajax将变量发布到php。Php文件将这些变量写入文本文件。python脚本从文本文件中读取变量以控制两个电动机。这工作了大约15秒,但在那之后,我必须重新加载网页以再次控制。python脚本不是问题所在,因为当我在文本文件中手动编写变量时,即使网页没有这样做,它也能工作。 所以问题是,几秒钟后javascript/ajax脚本不会将变量发布到php文件中,我猜 function startajax(){ $.ajax({ url:"/motor.php",
function startajax(){
$.ajax({
url:"/motor.php",
});
}
var v= 0;
var q=0;
function keyCode(event) {
var x = event.keyCode;
if (x == 37) {
var z = v-10;
if (z < -100) {
z= -100;
}
v = z;
document.getElementsByName('speedrechtsoutput')[0].value = v;
var d = $.ajax({
cache: false,
type: "POST",
url: "text.php",
data: {searchq: v, search: q},
});
};
if (x == 39) {
var z = v+10;
if (z > 100) {
z = 100;
}
v = z;
document.getElementsByName('speedrechtsoutput')[0].value = v;
var g = $.ajax({
cache: false,
type: "POST",
url: "text.php",
data: {searchq: v, search: q},
});
};
if (x == 65) {
var m = q-10;
if (m < -100) {
m = -100;
}
q= m;
document.getElementsByName('inputbox')[0].value = "";
document.getElementsByName('speedlinksoutput')[0].value = q;
var f = $.ajax({
cache: false,
type: "POST",
url: "text.php",
data: {search: q, searchq: v},
});
};
<!--(...)-->
}
函数startajax(){code>
$.ajax({
url:“/motor.php”,
});
}
var v=0;
var q=0;
功能键代码(事件){
var x=event.keyCode;
如果(x==37){
var z=v-10;
如果(z<-100){
z=-100;
}
v=z;
document.getElementsByName('speedrechtsoutput')[0]。值=v;
var d=$.ajax({
cache:false,
类型:“POST”,
url:“text.php”,
数据:{searchq:v,searchq:q},
});
};
如果(x==39){
var z=v+10;
如果(z>100){
z=100;
}
v=z;
document.getElementsByName('speedrechtsoutput')[0]。值=v;
var g=$.ajax({
cache:false,
类型:“POST”,
url:“text.php”,
数据:{searchq:v,searchq:q},
});
};
如果(x==65){
var m=q-10;
如果(m<-100){
m=-100;
}
q=m;
document.getElementsByName('inputbox')[0]。value=“”;
document.getElementsByName('speedlinksoutput')[0].value=q;
var f=$.ajax({
cache:false,
类型:“POST”,
url:“text.php”,
数据:{search:q,searchq:v},
});
};
}
还有html
Input: <input type="text" name="inputbox" size="50" onkeydown="keyCode(event)">
<br> <br> <rb>
Speed Links: <input type="textbox" name="speedlinksoutput" value="0"></input>
Speed Rechts: <input type="textbox" name="speedrechtsoutput" value="0"></input>
输入:
速度链接:
速度记录:
text.php文件
<?php
if (isset($_POST['searchq']) && $_POST['searchq'] != "" && isset($_POST['search']) && $_POST['search'] != "")
{
$name = $_POST['searchq'];
$name = "$name\n";
$handle = fopen ("datei.txt", "w");
fwrite ($handle, $name);
$test = $_POST['search'];
$test="$test\n";
fwrite($handle, $test);
fclose ($handle);
exit;
}
?>
您可能需要限制调用,这样您就不会因为调用而影响服务器。正如我所知,$ajax
只调用一次URL,而不是重复调用。另外,如果你关心服务器响应,我认为你需要一个成功
功能。浏览器调试控制台告诉你什么?@jeff调试控制台没有告诉我任何错误或警告。你可能需要限制调用,这样你就不会在调用时敲打你的服务器。我知道$.ajax
调用URL一次也不会反复地另外,如果你关心服务器响应,我认为你需要一个success
功能。浏览器调试控制台告诉你什么?@jeff调试控制台没有告诉我任何错误或警告。