问题描述
||
我想知道这是否可能:
我有一页用户单击一个链接,该链接将调用PHP脚本。 PHP脚本返回true或false。
根据真假,我希望能够切换div。
我想知道是否需要AJAX方式?人们通常如何做到这一点?
似乎很普通。
我已经在使用这个YUI库:
<link rel=\"stylesheet\" type=\"text/css\" href=\"http://yui.yahooapis.com/combo?2.8.2r1/build/reset-fonts-grids/reset-fonts-grids.css&2.8.2r1/build/base/base-min.css\">
解决方法
是的,非常容易,不需要Ajax。这有两种方式:
使用直接的PHP:
<?php
if($test) {
echo \"<div>Content...</div>\";
}
?>
或者,使用内联Javascript(在PHP脚本中),假设HTML中有<div id=\'targetDiv\'>
,PHP中有PHP3ѭ:
<script type=\'text/javascript\'>
function toggle(testVar) {
if(testVar) { document.getElementById(\'targetDiv\').style.display = \"\"; }
else { document.getElementById(\'targetDiv\').style.display = \"none\"; }
}
window.onload = function() { toggle(<?php echo $testVar; ?>); }
</script>
第二种方法可以很容易地更改为适当降级。
, jQuery的:
$.post(\'/path/to/url\',{data: \'some data\'},function(data) {
if (data) $(\'#some-div\').show();
else $(\'#some-div\').hide();
},\'json\');
PHP:
echo json_encode(true);
有关更多信息,请参见:
http://api.jquery.com/category/ajax/
http://php.net/manual/zh/function.json-encode.php
, 是的,您应该使用AJAX在您的网站中创建良好的流程。除了使用自己的AJAX处理功能之外,您还可以使用其中一个大型JavaScript框架,我建议使用http://jquery.com/。在这里,您可以阅读有关ѭ7的内容(并查看其中的示例)-http://api.jquery.com/category/ajax/。
这应该使您入门,但是主要思想是将该链接绑定到AJAX函数,该函数将调用您的PHP脚本,并根据返回数据的内容,打开/关闭DIV。
祝好运!
, 设置php脚本以添加隐藏字段...例如...
<input type=\"hidden\" id=\"passed-value\" value=\"passed-val-is-true\" />
然后在您的Javascript中触发切换事件时..检查该元素...
在jQuery中将是这样的...
$foo.click(( if (passed-value.value === \"passed-val-is-true\") { foo.toggle(); }
对不起语法..但您应该了解一般想法。
另外,如果您需要它而无需重新加载页面,那么我会建议使用Ajax(通过jQuery优选)