我正在尝试实现一个计时器。我从SO帖子中学到了这个想法。
<?php
if(($_SERVER['REQUEST_METHOD'] === 'POST') && !empty($_POST['username']))
{
//secondsDiff is declared here
$remainingDay = floor($secondsDiff/60/60/24);
}
?>
这是我的PHP代码。我的php,html和JS代码在同一页面中。我的html中有一个按钮。当用户点击html页面时,它将调用Ajax函数
//url:"onlinetest.php",
//dataType: 'json',
beforeSend: function()
{
$(".startMyTest").off('click');
setCountDown();
}
它将调用setCountDown()方法,该方法在最开始包含一行
var days = <?php echo $remainingDay; ?>;
当我运行页面时,它会在上面的行中显示[甚至在单击按钮之前] "expected expression, got '<'"
。我怀疑是
为什么在我触发按钮之前会更换此php变量。请让我知道锄头来解决这个问题或如何改变我的想法。
答案 0 :(得分:8)
问题是,由于初始加载,$_POST
值未填充(第一次加载时为空),
您设置的变量未定义,只需确保初始化该变量。
<?php
// initialize
$remainingDay = 1;
if(($_SERVER['REQUEST_METHOD'] === 'POST') && !empty($_POST['username']))
{
//secondsDiff is declared here
$remainingDay = floor($secondsDiff/60/60/24);
echo json_encode(array('remaining_day' => $remainingDay);
exit;
}
?>
<script>
var days = <?php echo $remainingDay; ?>;
$('.your_button').on('click', function(){
$.ajax({
url: 'something.php',
dataType: 'JSON',
type: 'POST',
beforeSend: function() {
// whatever processes you need
},
success: function(response) {
alert(response.remaining_day);
}
});
});
</script>
这只是基本的想法,我刚刚为该特定示例添加了其他代码,只需添加/更改您需要的其余逻辑。
答案 1 :(得分:2)
试试这个,
var days = "<?php echo $remainingDay; ?>";
答案 2 :(得分:2)
您可以将<tabs><pane title="my First tab"></pane></tabs>
变量传递到 beforeEach(inject(function ($rootScope, $compile, $injector) {
httpBackend = $injector.get('$httpBackend');
elm = angular.element(
'<div>' +
'<tabs>' +
'<pane title="First Tab">' +
'First content is ' +
'</pane>' +
'<pane title="Second Tab">' +
'Second content is ' +
'</pane>' +
'</tabs>' +
'</div>');
scope = $rootScope;
$compile(elm)(scope);
scope.$digest();
httpBackend.whenGET('feature/app/public.htm').respond(elm);
}));
it('should create clickable titles', function () {
console.log(elm.find('ul.nav-tabs'));
var titles = elm.find('ul.nav-tabs li a');
expect(titles.length).toBe(2);
expect(titles.eq(0).text()).toBe('First Tab');
expect(titles.eq(1).text()).toBe('Second Tab');
});
代码,例如
php
注意:强>
如果你想将php的JS
值传递给var jsvariable ="<?php echo $phpvariable ?>";
,你可以
json_encoded