按钮的树枝页面中的服务器端响应
server side response in twig page for button
我想获得对 twig 页面中按钮的服务器端响应。
例如-页面中将有 2 个按钮----
ON/OFF
当页面加载时,它应该从服务器检查(从 elasticsearch 数据库检查)是否 returns True 或 false,对于两个按钮。
例如,我们说对于 ON 按钮它 return "True" 它应该将颜色更改为绿色,例如 ----
$(this).addClass('btn-success');
$(this).removeClass('btn-primary');
主要目的是在页面加载时检查当前状态。
所以这不是点击功能,因为它显示页面加载时的状态。
我相信会有一些简单的方法来解决这个问题。
有谁知道如何解决这个问题。
这实际上与 Symfony 无关。您需要做的就是向服务器端脚本(控制器)发送 ajax 请求以获取服务器的状态。像这样:
$(document).ready(function(){
//send the request with empty data to the server to check the status
$.post('/url/to/action', {}, function(msg){
// we return a response like {status: 'on'} to the client if the search is on
if (msg.status == 'on'){
$('#your-button').addClass('success');
}
// else it is disabled
else
$('#your-button').addClass('primary');
});
});
上面是你的客户端代码,现在要将它与你的 symfony 应用程序集成,/url/to/action
必须指向你的 symfony 应用程序中的一些控制器操作 returns 状态,一个示例实现将像这样:
//in your controller, /url/to/action must lead to getStatusAction in your routing
public function getStatusAction(Request $request){
if($this->isElasticEnabled())
return new \Symfony\Component\HttpFoundation\JsonResponse(array('status' => 'on'));
else
return new \Symfony\Component\HttpFoundation\JsonResponse(array('status' => 'off'));
}
我想获得对 twig 页面中按钮的服务器端响应。 例如-页面中将有 2 个按钮----
ON/OFF
当页面加载时,它应该从服务器检查(从 elasticsearch 数据库检查)是否 returns True 或 false,对于两个按钮。
例如,我们说对于 ON 按钮它 return "True" 它应该将颜色更改为绿色,例如 ----
$(this).addClass('btn-success');
$(this).removeClass('btn-primary');
主要目的是在页面加载时检查当前状态。
所以这不是点击功能,因为它显示页面加载时的状态。
我相信会有一些简单的方法来解决这个问题。
有谁知道如何解决这个问题。
这实际上与 Symfony 无关。您需要做的就是向服务器端脚本(控制器)发送 ajax 请求以获取服务器的状态。像这样:
$(document).ready(function(){
//send the request with empty data to the server to check the status
$.post('/url/to/action', {}, function(msg){
// we return a response like {status: 'on'} to the client if the search is on
if (msg.status == 'on'){
$('#your-button').addClass('success');
}
// else it is disabled
else
$('#your-button').addClass('primary');
});
});
上面是你的客户端代码,现在要将它与你的 symfony 应用程序集成,/url/to/action
必须指向你的 symfony 应用程序中的一些控制器操作 returns 状态,一个示例实现将像这样:
//in your controller, /url/to/action must lead to getStatusAction in your routing
public function getStatusAction(Request $request){
if($this->isElasticEnabled())
return new \Symfony\Component\HttpFoundation\JsonResponse(array('status' => 'on'));
else
return new \Symfony\Component\HttpFoundation\JsonResponse(array('status' => 'off'));
}