html客户端和服务器端,如何通过单击按钮来更改HTML元素属性的值(在客户端和服务器端)?...

所以假设之情况是,JS是在button的点击调用。现在,当点击该按钮并调用JS函数时,整个网页已经被加载。所以,如果我通过从JS在URL从XMLHTTPRequest.open()功能(以及使用该方法GET)传递的变量,该变量被发送到$_REQUEST阵列上的服务器端。

1.现在,由于页面已经被加载,所以在元素已经显示的情况下,如何对元素属性的值进行更改。

之情况: -

我有一个PHP array与HTML三div的,他们呼应/显示。最初所有的div除了第一个都有display:none;样式属性。现在,在第一div的点击一个按钮的,我想调用一个函数JS我在那里设置display:none到第一div,并且display:block;到第二div。现在很简单。 但我希望在服务器端的上述数组中的各个div的HTML显示属性中进行此更改。

所以我想我需要AJAX。在this example之后,我尝试在URL中发送一个变量,然后尝试从$_REQUEST获取变量,但$_REQUEST似乎没有包含它。虽然我asked this question here,但我觉得这可能是因为已经执行,我在哪里写的代码从$_REQUEST获得该变量的页面的一部分,我想知道我应该写的代码只提到点击后执行按钮?

基本上说,我们在哪里写剧本AJAX,因为已经执行了页面的代码?

注: - 不建议JQuery的。我不能使用JQuery,但我可以使用YUI。我搜索了一下,发现了一些使用JQuery方法的解决方案。

JS代码: -

function xyz(var divIdOne, var divIdTwo) {

document.getElementById(params.divIdOne).style.display = "none";

document.getElementById(params.divIdTwo).style.display = "block";

document.getElementById(params.divIdTwo).style.border = "5px solid red";

var xmlhttp;

if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest();}

else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }

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

xmlhttp.send();

}

凡在服务器端的PHP脚本,我写的,这样当点击按钮后,其执行从URL接收变量的代码(其单击事件调用此JS函数的按钮)。

我试图在服务器上的文件的随机的地方做这样的事情,但它不工作了:

foreach($_REQUEST as $requestkey => $requestvalue) { //loop for just checking the elements of $_REQUEST

echo $requestkey.': '.$requestvalue;

}

if (array_key_exists('pass_back', $_REQUEST)) {

foreach ($array_of_divs as $div) {

if ($div->id=$divIdOne) {

$div->style='display:none';

} else if ($div->id=$divIdTwo) {

$div->style='display:block';

}

}

} else {echo 'FALSE!';}

2014-09-22

Solace

+0

'request.onreadystatechange =函数({如果(request.status === 200和request.readyState === 4){风险数据= EVAL ('('+ request.responseText +')'}}'。应该使用PHP的'echo json_encode($ assocArray);'Sever Side。JavaScript'var data''将成为JavaScript Object。'onreadystatechange'处理DOM。 –

2014-09-22 00:18:47

+0

哪里有关于这个问题的代码? –

2014-09-22 00:20:00

+0

@Ghost我发布了一些代码给[这个链接的问题](http://stackoverflow.com/questions/25962104/ajax-why-does-request-on -server-side-not-contain-the-variable-passed-from-js)。它是o部分的文件f很大,我只是贴了相关的位。而且,我不确定是否应该在这里发布代码以及它会使问题过长。 –

2014-09-22 00:23:43

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过以下步骤来实现: 1. 在 HTML 中创建两个按钮,一个是向前按钮,一个是向后按钮。 2. 在 HTML 中创建一个图片元素,设置其 ID 和初始图片路径。 3. 使用 JavaScript 来编写一个函数,该函数将根据按钮点击更改图片的路径。 4. 将函数绑定到按钮点击事件中,以便在单击按钮时触发函数并更改图片。 以下是一个简单的示例代码: HTML 代码: ``` <button id="prevBtn">Previous</button> <button id="nextBtn">Next</button> <img id="myImage" src="image1.jpg"> ``` JavaScript 代码: ``` var imageIndex = 1; var imageArray = ["image1.jpg", "image2.jpg", "image3.jpg"]; function changeImage(n) { imageIndex += n; if (imageIndex > imageArray.length) { imageIndex = 1; } if (imageIndex < 1) { imageIndex = imageArray.length; } document.getElementById("myImage").src = imageArray[imageIndex - 1]; } document.getElementById("prevBtn").addEventListener("click", function(){ changeImage(-1); }); document.getElementById("nextBtn").addEventListener("click", function(){ changeImage(1); }); ``` 解释: 1. imageIndex:用于跟踪当前显示的图像的索引。 2. imageArray:包含要在图像之间切换的所有图像路径的数组。 3. changeImage(n):该函数接受一个参数 n,表示要更改的图像数量。当单击按钮时,将调用此函数并传递 -1 或 1,以向前或向后更改图像。 4. 通过将事件监听器绑定到按钮点击事件上,将 prevBtn 和 nextBtn 两个按钮与 changeImage 函数连接起来。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值