0

コードがある .aspx ファイルがあり、ユーザーがドロップダウンの選択肢を選択するコードは次のとおりです。

<td align="right">PI Organization: </td>
<td>
     <asp:DropDownList ID="ddlOrg" runat="server" TabIndex="9" AutoPostBack="True" 
                    onselectedindexchanged="ddlOrg_SelectedIndexChanged">
         <asp:ListItem Value="none">(Select One)</asp:ListItem>
         <asp:ListItem>University of Fun</asp:ListItem>
         <asp:ListItem>UOFF</asp:ListItem>
         <asp:ListItem>Other</asp:ListItem>
     </asp:DropDownList>
</td>

ユーザーが UOFF のファン大学を選択した場合は 40 ドル、その他を選択した場合は 50 ドルになる if ステートメントをそのすぐ下に置く必要があります。

ここに私が持っているものがあります:

if(ddOrg="University of Fun"){
    fee = $40;
}
else {(ddlOrg="UOFF"){
    fee = $40;
}
else {ddOrg="Other"){
    fee = $50;
}
4

2 に答える 2

0

代入演算子の代わりに等価演算子 (==) を使用する必要があります。また、最初の 2 つのケースを 1 つにまとめることができます。

 if(ddOrg == "University of Fun" || ddlOrg == "UOFF"){
    fee = $40;
} else {
    fee = $50;
}

また、括弧の位置が間違っていて、else の条件は必要ありません。条件が必要な場合は、elseifnotを使用する必要がありますelse。Else は本質的に他のすべてのケースを意味するため、条件を取りません。以前の条件が満たされない場合のフォールバックです。||論理演算子 or です。の両方の条件の料金ifは 40 ドルif ( conditionOne OR conditionTwo)なので、コードを読みやすくすることもできます。

于 2013-03-07T20:59:51.893 に答える
0

まず、ユーザーが送信する前にクライアント側の通知を表示したい場合は、 AutoPostBack="true" を削除することをお勧めします。

また、各リスト項目に対して値を設定することをお勧めします。たとえば、次のようになります。

<asp:DropDownList ID="ddlOrg" runat="server" TabIndex="9" >
     <asp:ListItem Value="0">(Select One)</asp:ListItem>
     <asp:ListItem Value="1">University of Fun</asp:ListItem>
     <asp:ListItem Value="2">UOFF</asp:ListItem>
     <asp:ListItem Value="3">Other</asp:ListItem>
 </asp:DropDownList>

jQuery/javascript を使用して、ユーザーの選択に応じてメッセージを表示できます。

.aspx ビューでは、次の行に沿って何かを使用できます。

<%--Reference jQuery--%>
<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>

<script type="text/javascript" >
     $(document).ready(function(){
         $("#<%=ddlOrg.ClientID %>").change(function() {
             var selectedValue = parseInt($(this).val());

             //add extra logic for your options
             if (selectedValue === 1) {

                 //set the text to display
                 $("#priceNotice").html("$40");
             });
         });
     });
</script>

<span id="priceNotice"></span>

これにより、ユーザーが「University of Fun」を選択した場合、スパンに「$40」が表示されます。他のオプションを満たすようにコードを変更できます。

于 2013-03-07T20:52:21.057 に答える