2013-03-12 3 views
0

Я относительно новичок в aspx и получил небольшую задачу по созданию калькулятора BMI. Этот калькулятор требует двух форм на одной странице (один для использования в метрике и один для имперских/стандартных футов, дюймов и фунтов. У меня есть две формы, которые отлично функционируют, используя небольшие обработчики событий, но я полностью потерял, когда дело доходит до создания события обработчик для кнопки «calculate» и «clear». Для первой части задачи мне нужно иметь отдельный обработчик событий для каждой кнопки. Я знаю, что есть способ использовать один обработчик событий, но мне не разрешено сделать это в это времяКак создать калькулятор BMI с помощью обработчиков событий

код, который я в настоящее время написано, чтобы сэкономить время, я просто разместить одну из форм, императорский/стандарт один Извините, если это грязно!..

<form id="US" runat="server" visible="true"> 
    <div style="background-color:#4DB8FF; width:350px; height:300px; margin:auto; text-align:center;"> 
     <h4> 
      Body Mass Index Calculator 
      <asp:Button id="btnUS" runat="server" text="US" OnClick="btnUS_Click" /> 
      <asp:Button id="btnMetric" runat="server" Text="Metric" OnClick="btnMetric_Click" /> <br /> 

      <script runat="server"> 
       protected void btnUS_Click(object sender, EventArgs e) 
       { 
        this.US.Visible = true; 
        this.Metric.Visible = false; 
       } 

       protected void btnMetric_Click(object sender, EventArgs e) 
       { 
        this.US.Visible = false; 
        this.Metric.Visible = true; 
       } 

      </script> 
     </h4> 


        <asp:label ID="lbl1" Text="Height:" runat="server" /> 
        <asp:TextBox ID="heightus" runat="server" />feet<br /> 
        <asp:TextBox ID="heightus1" runat="server" />inch(es)<br /> 
        <asp:Label ID="lbl2" Text="Weight:" runat="server" /> 
        <asp:TextBox ID="weightus" runat="server" />lbs<br /> 
       <br /> 
        <asp:Button ID="calcUS" Text="Calculate" runat="server" /> 
        <asp:Button ID="clearUS" Text="Clear" runat="server"/> 
       <br /><br /> 
        <asp:Label ID="lbl3" Text="Results:" runat="server" /> 
        <asp:TextBox ID="resultus" runat="server" /> <br /> 


    </div> 
</form> 

Как видите, есть три (3) текстовые поля, содержащие данные для расчета. Ноты, дюймы (дюймы) и текстовое поле Lbs. Мне нужно собрать информацию, которая помещена в эти коробки, и использовать ее для расчета ИМТ отдельных лиц.

Любая помощь будет принята с благодарностью!

ответ

1

Это то, что я хотел бы сделать: ID = "US" Runat = "сервер" Visible = "истинный"> Индекс массы тела Калькулятор

 <script runat="server"> 
      protected void btnUS_Click(object sender, EventArgs e) 
      { 
       this.US.Visible = true; 
       this.Metric.Visible = false; 
      } 

      protected void btnMetric_Click(object sender, EventArgs e) 
      { 
       this.US.Visible = false; 
       this.Metric.Visible = true; 
      } 
      protected void calcUS_Click() 
     { 
       //do the computation here 
       resultus.text = //put the results here 
     } 
     </script> 
    </h4> 


       <asp:label ID="lbl1" Text="Height:" runat="server" /> 
       <asp:TextBox ID="heightus" runat="server" />feet<br /> 
       <asp:TextBox ID="heightus1" runat="server" />inch(es)<br /> 
       <asp:Label ID="lbl2" Text="Weight:" runat="server" /> 
       <asp:TextBox ID="weightus" runat="server" />lbs<br /> 
      <br /> 
       <asp:Button ID="calcUS" Text="Calculate" runat="server" 
    onclick="calcUS_Click" /> 
       <asp:Button ID="clearUS" Text="Clear" runat="server"/> 
      <br /><br /> 
       <asp:Label ID="lbl3" Text="Results:" runat="server" /> 
       <asp:TextBox ID="resultus" runat="server" /> <br /> 


</div> 

+0

Большое спасибо! как для вычисления, как я могу его написать, чтобы он работал с обычной формулой BMI (Вес (фунты)/(высота в дюймах * высота в дюймах)) * 703? Я признаю, что мне нужно будет преобразовать ноги в дюймы, но я не уверен, как написать этот код. –

+0

Возможно, вы захотите сделать что-то вроде этого: protected void protected void calcUS_Click() { resultus.text = (weightus.text/(heightus.text * heightus1.text)) * 703; } –

+0

EDIT: вы можете сделать что-то вроде этого: protected void protected void calcUS_Click() { { // Это преобразует ноги в дюймы (формула: ноги/12) resultus.text = (weightus.text/((heightus.text/12) * (heightus1.text/12))) * 703; } –

Смежные вопросы