我正在尝试使用以下 JQuery 代码让 Ajax 在服务器上启动守护进程。警报弹出,但守护进程未启动。如何正确格式化 $.ajax({data: {},; 部分以使此代码正常工作。我花了几个小时寻找与此直接相关的示例,但只找到了范围广泛且错综复杂的一堆通常很臭的东西:) 谢谢。
更新
我仍然无法启动守护进程。我按照建议在服务器上添加了一个名为“executedp.php”的 php 文件。它包含一个我希望可以完成任务的脚本。但是,它并没有完成。
有谁看到我遗漏了什么吗?
以下是 executedp.php 的 php 代码:
<?php $startDaemon = exec('sh ~/.devilspie/ruleset.sh $x; done'); ?>
以下是更新后的 JQuery 代码:
if(found) {
var xhr = $.ajax({
url: 'executedg.php',
success: alert("It has begun!")
});
switch($.tableCount) {
case ($.tableCount = 1):
window.open('table1.html');
xhr;
break;
case ($.tableCount = 2):
window.open('table1.html');
window.open('table2.html');
xhr;
break;
case ($.tableCount = 3):
window.open('table1.html');
window.open('table2.html');
window.open('table3.html');
xhr;
break;
case ($.tableCount = 4):
window.open('table1.html');
window.open('table2.html');
window.open('table3.html');
window.open('table4.html');
xhr;
break;
}
}
答案1
当您调用 XmlHttpRequest (xhr) 时,您必须指定要在远程服务器上执行的 URL/URI。您必须在此 URI 中包含的脚本中启动守护程序。
除了客户端编码(Jquery)之外,您还需要一些服务器端脚本。
已编辑:我认为你搞乱了旧式的 XmlHttpRequest 和 $.ajax。你的代码只在第一次调用时发出 ajax 请求,当你定义时间轴。当您引用时间轴再次对象,在里面转变命令,ajax 调用未被触发。