根据所选选项更改表数据

我有一个表显示数据库中的数据。 我有一个选择框,人们可以选择他想要显示数据的货币。

当他这样做时,我需要刷新数据并显示为新货币。 而且我无法弄清楚如何在不刷新整个页面的情况下这样做。

有什么想法吗?

 В рублях USD EURO   <?php $sql = mysql_query("SELECT * FROM `prices`"); while($r = mysql_fetch_array($sql)) { echo("\t\t\n"); echo("\t\t\t\n"); echo("\t\t\t\n"); echo("\t\t\t\n"); echo("\t\t\n"); } ?> 
Сервер 1 кк адены 1 ккк адены
".$r['name']."$".round($r['kk']/$dollar, 2)."$".round($r['kkk']/$dollar, 2)."

如果您可以保留数据转换的因子(对于转换USD> AUS USD> EUR或其他),您可以使用一个常规选择器在整个表中委派更改。

首先你把所有的因素都放在js vars中这样(这个必须在php文件里面做,其他东西可以在单独的js中完成):

 var USDtoEUR =  

你要做的下一件事是绑定事件以点击选择框,按钮或其他任何东西,让我们说它是选择id为“currency”:

 $('#currency'). click(function() { switch ($('this').val()) { case 'EUR' { //Code we will discuss is going here } break; //... etc... 

因此,我们希望更改我们假设的所有数据是点击美元,因此我们将所有因素从usd转换为存储在单独的vars USDtoXXX中的其他值。 请注意,我们也需要一个USDtoUSD。

现在……无论结构如何,包含动态更改数据的元素都应具有类和inusd属性,如下所示:

 
  • 123
  • 应该将usd中的价格存储到属性中,以使其与将要更改的dom内容无关。

    所以对于上面的例子,我们这样做:

     $('.price').each(function() { $(this).text()=$(this).attr('inusd')*USDtoEUR; //If user selected EUR } 

    小心在switch语句中使用break和default … javascript switch让case放弃他们的条件。

    另外,在使用钱时,请对计算function进行深入测试,javascript也会不时地弄乱upp:D

    您可以使用Ajax,它允许请求数据库并检索数据而无需刷新整个页面。

    以下是介绍: http : //www.w3schools.com/jquery/jquery_ajax_intro.asp

    然后,查看jquery API并查看示例: http : //api.jquery.com/jQuery.ajax/

    祝好运