【发布时间】:2015-02-10 07:51:50
【问题描述】:
我根据 Cimbali 的建议更新了这个问题。这是现在指定请求的js代码:
......
function editFiltName($thisFiltCell) {
var cellText=$thisFiltCell.text();
var idx=$thisFiltCell.index(); //alert("idx: idx");
var newFN=prompt("Enter new filter name below - up to 12 characters.", cellText);
switch (newFN) {
case null : return; // cancel key hit
case cellText : return; // no change
case "" : ; //$thisFCell.text('Filter' + (idx+1));
default : $thisFiltCell.text(newFN);
}
var action='updateFiltName';
var request = MrAjax(action,newFN,idx);
} // end main function
//*******************************************
function MrAjax(action,P1,P2) {
console.log("Ajax-> action: "+action+" P1: "+P1+" P2: "+P2);
var jqxhr=$.ajax({
type: "POST",
url: "../phpMain/editTblField.php",
data: {action:action, P1:P1, P2:P2}
});
jqxhr.always(function() { console.log("jqxhr.status: " + jqxhr.status ); });
} // end MrAjax
这是我输入一些数据时的控制台输出:
有什么建议吗?请注意,控制台错误之后会立即出现同一文件的“成功”响应。但是php文件仍然没有运行。我没有收到来自服务器的 php 错误响应 - 我也没有看到我放置在 php 文件echo("Got here!); 第一行的嵌入回显。即使我注释掉除该行之外的所有内容也是如此。
我不认为它在 php 代码中,但以防万一,这里是:
<?php
echo "Got here!";
?>
再次感谢您的观看。
【问题讨论】:
-
你确定“加载完成”意味着成功吗?收到 404 回复后,不仅加载停止了吗?
-
我认为你是对的。很好的发现。当我故意将虚假文件路径放入 req 时,我得到相同的控制台输出。 OTOH“完成加载”POST数据到文件对我来说意味着它找到了该文件并“完成”了将数据加载到它。他们为什么还要在消息中包含文件/路径?我已经学习 ajax 几年了,并且非常成功地使用它。但看来我还有办法去掌握它。我想我可以停止寻找隐藏的第二个请求了 :)
-
如果您在浏览器中复制/粘贴该消息的确切 URL,您可以加载页面?
-
@Cimbali 我离开了我的开发系统,不知何故我当前的文件没有进入我的保管箱,所以我无法测试这个。我应该明天回来。