2015-08-14 41 views
1

我有这样的事情:的Javascript选择单选按钮改变PHP函数

<p>Until: <input value="<?php echo until_3months();?>" type="text" name="until"/></p> 
       <input type="radio" name="unt" id="3" value="3" checked="checked">3 months 
       <input type="radio" name="unt" id="6" value="6">6 months 
       <input type="radio" name="unt" id="12" value="12">12 months 

我想,当用户查询3/6/12个月,从收音机到改变我的PHP函数来until_3months()/ until_6months()/ until_12months()。我的事情是不可能的,所以我可以改变没有PHP功能的价值,只是JavaScript。我的PHP函数将在今后3/6/12个月内计算。喜欢的东西保修期至+3/+6 /12个月从现在开始,我不知道如何在JavaScript替换此:

function until_3months(){ 
      $time = strtotime(date("Y-m-d")); 
      $final = date("Y-m-d", strtotime("+3 month", $time)); 
      return $final; 
     } 

回答

2

你不能改变如何PHP函数通过JavaScript交互,为JavaScript有没有办法与PHP代码交谈,除非您向服务器发出AJAX请求并以这种方式询问价值。然而,一个AJAX请求对于这样的事情来说可能是过度的,并且不是必需的。

你想要做的是计算你的值并将它们附加到你的HTML。

<p>Until: <input id="date-text-field" value="" type="text" name="until"/></p> 
<input class="date-radio-button" data-date="<? echo until_3months(); ?>" type="radio" name="unt" id="3" value="3" checked="checked">3 months 
<input class="date-radio-button" data-date="<? echo until_6months(); ?>" type="radio" name="unt" id="6" value="6">6 months 
<input class="date-radio-button" data-date="<? echo until_12months(); ?>" type="radio" name="unt" id="12" value="12">12 months 

设置,现在可以使用在JavaScript(使用JQuery)像这样那些值的那些值:当用户点击与类“日期单选按钮单选按钮

$('.date-radio-button').click(function(){ 
    $('#date-text-field').val($(this).attr('data-date')); 
}); 

'文本字段'#date-text-field'将被附加到单选按钮的数据日期值更新。

+0

这完美的作品。谢谢 ! –