[英]Get variable from Ajax to Php
我有一個ajax代碼,它帶有textfiled變量。 它警告值,但是當我想進入php時,它給了我一個Undefined index錯誤
JavaScript代碼
<SCRIPT>
function go(UserID) {
var name= encodeURI(document.getElementById('name').value);
var design= encodeURI(document.getElementById('design').value);
http.open('get', 'testAjax.php?design='+design+'&name = '+name);
http.send(null);
}
</SCRIPT>
HTML代碼
<INPUT ID='name' type='text'>
<INPUT ID='design' type='hidden' value="<?php echo $UserID; ?>">
<A href="?process" onclick="javascript:go(<?php echo $UserID; ?>)">Link</A>
郵遞區號
if(isset($_GET['process'])) {
echo $_GET['design'];
echo $_GET['name'];
}
請讓我知道如何解決。
您有一個錨標記,上面有一個onclick事件。 觸發時的testAjax.php?
事件會向testAjax.php?
發送ajax請求testAjax.php?
網址。
但是,由於您沒有阻止單擊錨標記的默認行為,因此,一旦發送了此Ajax請求,頁面將重定向到?process
,當然,您在什么地方也不會收到任何作為$_GET
參數的信息。
假設您的ajax正確,添加return false;
在go()
函數的末尾。 另外,由於在服務器端您有一個類似於if(isset($_GET['process'])) {
的子句,因此您還應該將ajax url更新為: testAjax.php?process
好的,我發現有幾件事可能導致了此問題。 嘗試:
<script>
function go(UserID) {
var name= encodeURI(document.getElementById('name').value);
var design= encodeURI(document.getElementById('design').value);
http.open('get', 'testAjax.php?process&design='+design+'&name='+name);
http.send(null);
}
</script>
<input id='name' type='text' />
<input id='design' type='hidden' value="<?=$UserID; ?>" />
<a href="#" onclick="javascript:go(<?=$UserID; ?>)">Link</a>
如您所見,我們刪除了html變量“ process”,並將其作為ajax調用的一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.