我怎麼能沒有ajaxy善良做到這一點?我需要調試一個麻煩的PHP腳本。沒有形式只是一個圖像,當點擊時執行以下操作。再次jquery發送數據到php沒有ajax
$.post("php/navTabs.php", { action: "deleteTab", theHTM: thehtm }, function(jdata) {
alert("The tab was " + jdata.is_deleted);
}, "json");
感謝, 託德
我怎麼能沒有ajaxy善良做到這一點?我需要調試一個麻煩的PHP腳本。沒有形式只是一個圖像,當點擊時執行以下操作。再次jquery發送數據到php沒有ajax
$.post("php/navTabs.php", { action: "deleteTab", theHTM: thehtm }, function(jdata) {
alert("The tab was " + jdata.is_deleted);
}, "json");
感謝, 託德
簡短回答:你不能使用Javascript。
龍答:
如果你想避免使用AJAX,你有兩個選擇:
1)製作一個表單的圖像部分,在點擊提交按鈕隱藏的輸入。
<form method="form.php" action="post">
<input type="hidden" name="action" value="delete"/>
...rest of form...
</form>
2)使圖像成爲鏈接到URL上的輸入的鏈接。像:
form.php?action=delete
不知道爲什麼你想避免使用AJAX,但。
當然,如果可以完成,您可以直接訪問腳本。 PHP文件存在? AJAX不會魔法解析出來的內容。 –
恩,是的,但是你不能使用jQuery/Javascript發送數據到PHP文件而不使用AJAX。您可以使圖像成爲一個鏈接,並像URL地址一樣在URL中發送數據,或者您可以將其更改爲表單,但無法使用AJAX通過jQuery/Javascript發送數據,至於I'意識到。 – Jemaclus
最後,我不想繞過Ajax,但我有一個PHP腳本,不正確的行事,我需要把一些var_dumps和回聲看到WTF正在進行。 – maddogandnoriko
我會/ navTabs.php改變$ _ POST變量在PHP到$ _GET和訪問腳本一樣,直接
php/navTabs.php?name=value&name2=value2 etc
這樣,你不你的方式沒有阿賈克斯。
這種方法將允許你因爲它透明的發生給用戶,並允許一個回調函數使用非常類似於$.post()
流:
<img />
<iframe id="workFrame" style="display: none"></iframe>
<form action="php/navTabs.php" target="workFrame" method="post" style="display: none">
<input type=hidden id="hidden-1">
<input type=hidden id="hidden-2">
</form>
<script>
$('#hidden-1').val('some value to send to the server');
$('#hidden-2').val('some OTHER value to send to the server');
$('img').on('click', function() {
$('form').trigger('submit');
});
</script>
這使用具有隱藏的輸入的形式(因此這可以是透明的給用戶)。您可以使用JavaScript設置隱藏輸入的值,然後以編程方式將表單提交給隱藏的iframe。
這種方法的另一個特點是,你可以綁定到load
事件的iframe,並有一個回調函數就像$.post()
:
$('#workFrame').on('load', function() {
var response = $(this).contents().filter('body');
//if you output JSON in your PHP script you could parse this as JSON and do work
});
UPDATE
如果你想do是看到你的PHP腳本的輸出,那麼你可以使用你的開發工具(FireBug等)來查看響應。您還可以在AJAX回調中記錄響應:
$.post("php/navTabs.php", { action: "deleteTab", theHTM: thehtm }, function(jdata) {
alert("The tab was " + jdata.is_deleted);
console.log(jdata);
}, "json");
如果您當前未使用某些Dev。使用控制檯的工具,我強烈建議檢查FireBug,它將爲您節省大量的時間調試代碼。
您可以使用cURL從命令行發佈。 –