这是我的jquery代码
<script>
$(function () {
$('#deleteform').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'get',
url: 'delete.php',
success: function () {
alert('Worked');
}
});
});
});
</script>
我的PHP代码(我只是试图测试它,所以我添加了一个简单的函数)
<?php
header("Location: http://www.google.com/");
?>
当我点击按钮(表单提交时)没有任何反应,除了&#34; Worked&#34;警报框。但无论我放在那个PHP文件(delete.php)中,都没有任何反应。我究竟做错了什么?我的&#34; delete.php&#34;文件将有一个脚本来删除XML文件中的数据,以防它发生变化。 (现在我尝试使用简单的php行)
修改
PHP文件中的真正PHP代码是:
<?php
$xml = simplexml_load_file("signatures.xml");
$name = $_POST['nom'];
$signs = $xml->xpath('//Signature[Nom = "'.$name.'"]');
$xml -> SignaturesParent -> removeChild($signs);
?>
当我尝试时没有任何事情发生。
答案 0 :(得分:2)
试试这个。
ajax调用现在会警告从
发送给它的任何内容delete.php
ajax调用执行POST而不是GET,以便它与您使用$ _POST [&#39;&#39;]的事实相匹配并发送一些数据,即
smith
你是必须将其更改为XML文件中实际存在的内容
delete.php
实际上返回了一些内容
delete.php
将更改的xml文档保存回磁盘,并将其保存到具有不同名称的文件中,以便您可以查看它是否确实执行了任何操作。 就在你正在测试的时候。
<script>
$(function () {
$('#deleteform').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'delete.php',
data: {nom:"smith"},
success: function (data) {
alert(data);
}
});
});
});
</script>
<?php
$xml = simplexml_load_file("signatures.xml");
$name = $_POST['nom'];
$signs = $xml->xpath('//Signature[Nom = "'.$name.'"]');
$xml -> SignaturesParent -> removeChild($signs);
$result = $xml->asXML("signatures2.xml");
echo $result ? 'File Saved' : 'File Not Saved';
?>