AJAX:如何在单击按钮时在客户端和服务器端更改值?

AJAX:如何在单击按钮时在客户端和服务器端更改值?,第1张

AJAX:如何在单击按钮时在客户端和服务器端更改值?

Zarah,有两个想法可能会帮助您:

正如我在评论中所说,尝试更改此位:

xmlhttp.open("GET","C:/xampp/htdocs/testing.php?pass_back="+"pass_back",true);

对于类似的东西:

xmlhttp.open("GET","testing.php?pass_back="+"pass_back",true);

考虑到这是指向Web服务器中名为testing.php的文件的有效途径。open()方法的url参数必须是 服务器
上文件的地址,并且必须使用指向该文件的有效 URL

另一个想法。您可以使用以下方法发送帖子信息:

xmlhttp.open("POST","testing.php",true);xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlenpred");xmlhttp.send("passback=passback");

因此您可以尝试使用POST(而不是GET)发送它,以了解发生了什么。这可能会给事情带来一些启示。

更多的东西。

可能由于您的php配置,$ _ REQUEST不包含任何内容,而$ _GET包含任何内容。这可能是检查$ _GET而不是$
_REQUEST的好理由。但是,如果您确实想使用$
_REQUEST,则可以在此处找到有关该主题的更多信息。

编辑

以下代码(基于您的代码)对我有效(debian APACHE / php
5.4)。我已将所有代码放在同一页上。我不是很喜欢它,但仅是指出它可行。AJAX部分将数据发送到main.php,而main.php只是将其收到的内容发送回去。然后,AJAX部分仅警告服务器的答案。

main.php

<?php//IF $_REQUEST ConTAINS pass_back this is an AJAX call, just send back and die.if (array_key_exists('pass_back',$_REQUEST)) {    echo $_REQUEST["pass_back"];    die();}/ //************************** var xmlhttp; if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() {   if (xmlhttp.readyState==4 && xmlhttp.status==200)     {     alert(xmlhttp.responseText);     } } xmlhttp.open("GET","testing.php?pass_back=pass_back",true); xmlhttp.send(); //**************************        }    </script></head><body>';//String of all the div's$haystack = '<div id="div1" >Div1</div><div id="div2" >Div2</div><div id="div3" >Div3</div>';//Print all the divsecho '<form method="post" enctype="multipart/form-data" accept-charset="utf-8">';echo $haystack;echo '<button type="button" onClick="clickButton(1,2)" >Submit</button>';echo '</form>';echo '</body></html>';?>

祝好运。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5051021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存