如何通过 HTML 输入标签调用 PHP 函数 (Yii1.1)
How to call a PHP function through HTML input tag (Yii1.1)
如标题所示,我正在寻找上述问题的解决方案。我有以下按钮:
<input onclick="setRefreshTimer();" type="button" value="10 Seconds">
以及功能下方。这为刷新计时器设置了特定时间(在示例中为 10 秒),以便覆盖默认值 30 秒。
function setRefreshTimer() {
Yii::log("I am not certain if I was here!");
CHtml::refresh(Yii::app()->config->set('DASHBOARD_RELOAD', 10));
return CHtml::refresh(Yii::app()->config->get('DASHBOARD_RELOAD'), $url);
}
我现在需要的是点击按钮时如何调用函数的解决方案。上面的代码是我迄今为止尝试过的代码,但它似乎无法正常工作,而且我似乎找不到原因。
任何帮助、建议 and/or 提示如何 solve/improve 非常欢迎这个问题。
好的伙计们。非常感谢您发送给我的惊人链接。很抱歉久违了。但多亏了你,我设法使用 Ajax 拨打了电话,而且工作得很好。我就是这样做的。
首先,DashboardController.php 中的函数会将我的仪表板的刷新计时器更改为 10 秒。
public function actionSetRefreshTimer() {
$url = Yii::app()->request->url;
Yii::log("I am not certain if I was here!");
if (isset($_GET['DASHBOARD_RELOAD']) !== 10) {
Yii::log("And it went into the if!");
CHtml::refresh(Yii::app()->config->set('DASHBOARD_RELOAD', 10));
}
现在 ajax 调用完成了工作。
<button id="tenSeconds">10 Seconds</button>
<script>
$("#tenSeconds").click(function() {
console.log("The click worked just fine");
$.ajax({
url: '/path/to/my/function/SetRefreshTimer',
method: 'POST',
});
});
</script>
如标题所示,我正在寻找上述问题的解决方案。我有以下按钮:
<input onclick="setRefreshTimer();" type="button" value="10 Seconds">
以及功能下方。这为刷新计时器设置了特定时间(在示例中为 10 秒),以便覆盖默认值 30 秒。
function setRefreshTimer() {
Yii::log("I am not certain if I was here!");
CHtml::refresh(Yii::app()->config->set('DASHBOARD_RELOAD', 10));
return CHtml::refresh(Yii::app()->config->get('DASHBOARD_RELOAD'), $url);
}
我现在需要的是点击按钮时如何调用函数的解决方案。上面的代码是我迄今为止尝试过的代码,但它似乎无法正常工作,而且我似乎找不到原因。
任何帮助、建议 and/or 提示如何 solve/improve 非常欢迎这个问题。
好的伙计们。非常感谢您发送给我的惊人链接。很抱歉久违了。但多亏了你,我设法使用 Ajax 拨打了电话,而且工作得很好。我就是这样做的。
首先,DashboardController.php 中的函数会将我的仪表板的刷新计时器更改为 10 秒。
public function actionSetRefreshTimer() {
$url = Yii::app()->request->url;
Yii::log("I am not certain if I was here!");
if (isset($_GET['DASHBOARD_RELOAD']) !== 10) {
Yii::log("And it went into the if!");
CHtml::refresh(Yii::app()->config->set('DASHBOARD_RELOAD', 10));
}
现在 ajax 调用完成了工作。
<button id="tenSeconds">10 Seconds</button>
<script>
$("#tenSeconds").click(function() {
console.log("The click worked just fine");
$.ajax({
url: '/path/to/my/function/SetRefreshTimer',
method: 'POST',
});
});
</script>