如何通过单选按钮为摄氏度或华氏度设置选项

时间:2019-05-10 11:18:52

标签: javascript php html laravel web

我创建了一个Laravel项目,该项目首先向您显示一个带有月份的组合框,然后将您发送到具有所选月份的页面,在此页面上显示该月的天气统计信息,我的任务是添加2个单选按钮,之一,当按下时显示以摄氏度为单位的统计数据,另一个在点击时显示以华氏度为单位,

说实话,我真的不知道如何解决这个问题。

我已经在网上查看了如何从摄氏转变为华氏度,但我真的没有找到任何合适的方法来帮助我。

这是它开始的页面

<!DOCTYPE html> <!-- selecteer.php -->
<html lang="nl">
    <head> <!-- VIEW -->
        <meta charset="UTF-8">
        <title>Temperaturen</title>
    </head>
    <body>
        <form action="overzicht" method="post">
            Maand: <select name="maand">
            <option value="1">Januari</option>
            <option value="2">Februari</option>
            <option value="3">Maart</option>
            <option value="4">April</option>
            </select>
            <button type="submit">Overzicht</button>
            <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
        </form>
    </body>
</html>

您选择一个月(月份在荷兰),然后在单击按钮时转到“ Temperatuur.php”

<?php # app\Temperatuur.php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
class Temperatuur extends Model
{
 static public function getData($maand = 0)
 {
 $dagtemperaturen = DB::table('dagmeting')->where('maandnr','=',$maand)->get();
 return $dagtemperaturen;
 }
}


在此页面上,它显示了一个表格,其中包含所选月份的温度统计信息,并且在顶部显示月份。


<?php # app\Http\Controllers\TemperatuurController.php
 // CONTROLLER
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Temperatuur;
use Illuminate\Http\Request;
class TemperatuurController extends Controller
{
 public function getIndex()
 {
 return view('selecteer');
 }
 public function overzicht(Request $request)
 {
 $maand = $request->input('maand');
 $metingen= Temperatuur::getData($maand);
 return view('overzicht', array('maand'=>$maand, 'metingen'=>$metingen));
 }
}




^^这是Temperatuur.php的控制器

我真的不知道该如何处理这件事,我知道您需要使用javascript做一些事情,但是我真的不知道该怎么办。

1 个答案:

答案 0 :(得分:0)

@Sjoerd,

从概念上讲,我会尽力帮助您-

  1. 您需要更新get temperature data方法以接受输入参数,该输入参数可以是摄氏度或华氏度,以及城市名称。
  2. 此方法中的代码将获取该城市的温度(假设基本计算单位为摄氏度)。
       2.1。如果将华氏温度传递给此方法,则只需convert the temperature to Fahrenheit并返回值。
  3. 在页面加载时,您可以调用此方法并传递默认的温度指标。
    3.1。您可以将默认页面加载指标设置为“摄氏”,并让用户从单选按钮中选择“华氏度”指标。
    3.2。(未来),您可能会将用户选择存储为浏览器cookie,因此,下次加载此页面时,您会自动以用户上次选择的指标显示温度。
  4. 如果用户更新单选按钮以选择华氏温度,则只需调用上面的方法(在第2点中说明),然后将“华氏温度”作为参数传递给该方法。

希望这会有所帮助。