在按钮单击中将一个功能更改为第二个功能
change one function into second in button click
嗨,我的控制器中有多年的数组:
public function getNextYear() {
$years = $this->getYears();
foreach ($years as $key => $value) {
$y[] = $value + 1;
}
return $y;
}
我在我的索引中显示这个:
<?php foreach ($years as $year): ?>
<div class="">
<?= $year; ?><br>
</div>
<?php endforeach; ?>
<?php endif; ?><br>
是否可以仅使用php添加一年?
不。您将需要使用 Ajax 将更多内容加载到视图中。
此外,您将检查是否有更多年份要加载,然后显示一个使用 Javascript/Jquery 调用 Ajax 的按钮。此请求会将内容直接放入您的页面中,这意味着您的函数getNextYear()必须返回Json或Html内容。
如果结果是 Json,则在 AJax 回调中,格式为 HTML。
在所有这些之后,连同按钮一起放一个div,用一些类来放更多内容:
<button id="callAjaxNextYears"></button>
<div class="nextYears"></div>
别忘了,在你的ajax发送去年显示。然后,您可以使用类似以下内容:
<button value="2012"></button>
在你的函数中,必须识别_GET或_POST或参数:
getNextYear($start){}
作为更好的做法,所有这些年份列表都必须由ajax实现,以避免项目中的标准代码。或者,您可以了解有关"AngularJS"的更多信息。
尝试更改您的 PHP 函数以更好地使用 ajax 调用:
public $actualYear;
public $maxYear = 2030; // Just a exemple, otherwhise, will create infinite years list
public static function getYears() {
if(isset($this->actualYear)){
$nowYear = $this->actualYear;
} else {
$nowYear = date("Y");
$this->actualYear = 2010;
}
if($nowYear < $maxYear){
$i = 0;
for ($yearNum = $this->actualYear; $yearNum <= $nowYear; $yearNum++) {
$year[] = $yearNum;
$i++;
if ($i == 3)
break;
}
}
return $year;
}
public function getNextYear() {
$this->actualYear = $_POST['start']; // Wherever your ajax has sended, can be a _GET as well
$years = $this->getYears();
foreach ($years as $key => $value) {
$y[] = $value + 1;
}
return $y;
}
如果您选择不使用 ajax,请尝试以下操作:
<a href="?start=2012">Load more years</a>
然后在控制器中:
public $maxYear = 2030; // Just a exemple, otherwhise, will create infinite years list
public static function getYears() {
if(isset($_GET['start'])){
$nowYear = $_GET['start'];
} else {
$nowYear = date("Y");
$this->actualYear = 2010;
}
if($nowYear < $maxYear){
$i = 0;
for ($yearNum = $this->actualYear; $yearNum <= $nowYear; $yearNum++) {
$year[] = $yearNum;
$i++;
if ($i == 3)
break;
}
}
return $year;
}
相关文章:
- 按下一个HTML按钮,该按钮使用一个功能在同一个新窗口中打开URL
- 使用Jquery创建一个具有单击和悬停功能的菜单
- Navgoco不是一个影响密码保护页面的功能
- 如何创建一个脚本,该脚本给定网站列表,它使用其搜索功能来获取信息
- 一个按钮中的两个onClick功能,并希望一个接一个地发生一个单击功能
- 重置功能,因此一次只有一个打开
- 具有双重功能的按钮:在_blank窗口中打开一个链接,再加上_self中的另一个链接
- 使用单选按钮参考另一个功能
- 一个Ajax函数能产生另一个Ajax功能吗
- 流星:移除不是一个功能
- 通过模糊功能传递链接,而不是单击另一个链接
- 使jQuery自动完成功能适用于多个单词(“跳过”一个单词)
- 浏览器同步摄像头加速视频播放不是一个功能
- 谷歌应用程序脚本搜索UI下一个和上一个功能
- 如何阻止一个Submit按钮运行Submit Click功能
- 如何使用上一个/下一个功能循环数组中的图像
- 是否可以设置一个功能“;联系我们”;页面使用HTML/CSS
- 最有效:不同的功能/一个功能有案例
- 我正试图找出如何使我的功能一个接一个地运行.但这并没有奏效
- Grails ajax功能——一个“恼人的bug”