C# 在使用可见光时有问题。单击复选框时,我的Javascript似乎没有处理事件
我所有的隐藏字段都有ID。在我的JavaScript中,我试图在付款选择中将可见值从false设置为true。现金支付应该只显示要发送到的地址。信用卡付款带有文本框和标签,以便在线处理付款。但是当我运行脚本时,复选框选项不会出现。我分配了onClick事件,但仍然不起作用。有什么建议吗C# 在使用可见光时有问题。单击复选框时,我的Javascript似乎没有处理事件,c#,javascript,asp.net,.net,C#,Javascript,Asp.net,.net,我所有的隐藏字段都有ID。在我的JavaScript中,我试图在付款选择中将可见值从false设置为true。现金支付应该只显示要发送到的地址。信用卡付款带有文本框和标签,以便在线处理付款。但是当我运行脚本时,复选框选项不会出现。我分配了onClick事件,但仍然不起作用。有什么建议吗 <%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Shoppin
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="ShoppingCart.aspx.cs" Inherits="ShoppingCart" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
<head>
<script type="text/javascript">
function paymentFunction() {
if (document.getElementById("rbCash").checked) {
document.getElementById("lbCash").visible = true;
document.getElementById("lbCash2").visible = true;
document.getElementById("lbCash3").visible = true;
document.getElementById("lbCash4").visible = true;
}
else
{
if(document.getElementById("rbCreditCard").checked)
{
document.getElementById("lbCard").visible = true;
document.getElementById("lbCardNum").visible = true;
document.getElementById("lbCVV").visible = true;
document.getElementById("lbexp").visible = true;
document.getElementById("ddlCard").visible = true;
document.getElementById("tbCnum").visible = true;
document.getElementById("tbcvvnum").visible = true;
document.getElementById("tbexp").visible = true;
}
}
}
</script>
<style type="text/css">
.style1
{
width: 100%;
}
.style2
{
width: 100%;
}
.style3
{
width: 130px;
}
</style>
</head>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<table class="style2">
<tr>
<td class="style3">
Payment Type:</td>
<td>
<asp:CheckBox ID="rbCash" runat="server" onClick="paymentFunction()" Text="Cash" ClientIDMode="Static"/>
<asp:CheckBox ID="rbCreditCard" runat="server" onClick="paymentFunction()" Text="Credit Card" />
</td>
</tr>
<tr>
<td class="style3">
</td>
<td>
<asp:Label ID="lbCash" runat="server" ForeColor="Black"
Text="Please Send Payment To:" Visible="False" ClientIDMode="Static"></asp:Label>
</td>
</tr>
<tr>
<td class="style3">
</td>
<td>
<asp:Label ID="lbCash2" runat="server" ForeColor="Black"
Text="Wild Style Shoes" Visible="False" ClientIDMode="Static"></asp:Label>
</td>
</tr>
<tr>
<td class="style3">
</td>
<td>
<asp:Label ID="lbCash3" runat="server" ForeColor="Black"
Text="1808 West Avenue" Visible="False" ClientIDMode="Static"></asp:Label>
</td>
</tr>
<tr>
<td class="style3">
</td>
<td>
<asp:Label ID="lbCash4" runat="server" ForeColor="Black"
Text="Chicago, IL 88947" Visible="False" ClientIDMode="Static"></asp:Label>
</td>
</tr>
<tr>
<td class="style3">
<asp:Label ID="lbcard" runat="server" Text="Card Type" Visible="False"></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddlCard" runat="server" Visible="False">
<asp:ListItem>Select A Card</asp:ListItem>
<asp:ListItem>Visa</asp:ListItem>
<asp:ListItem>Discover</asp:ListItem>
<asp:ListItem>MasterCard</asp:ListItem>
<asp:ListItem>American Express</asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr>
<td class="style3">
<asp:Label ID="lbcardnum" runat="server" Text="Card Number:" Visible="False"></asp:Label>
</td>
<td>
<asp:TextBox ID="tbCnum" runat="server" Visible="False" Width="200px"></asp:TextBox>
</td>
</tr>
<tr>
<td class="style3">
<asp:Label ID="lbCVV" runat="server" Text="CVV Number" Visible="False"></asp:Label>
</td>
<td>
<asp:TextBox ID="tbcvvnum" runat="server" Visible="False" Width="58px"></asp:TextBox>
</td>
</tr>
<tr>
<td class="style3">
<asp:Label ID="lbexp" runat="server" Text="Expiration Date" Visible="False"></asp:Label>
</td>
<td>
<asp:TextBox ID="tbexp" runat="server" Visible="False"></asp:TextBox>
</td>
</tr>
<tr>
<td class="style3">
</td>
<td>
<asp:Button ID="Button1" runat="server" Text="Submit Payment" Visible="False" />
</td>
</tr>
</table>
<p>
</p>
<p>
</p>
<p>
Thank You For Shopping With Us:<br />
</p>
<p>
</p>
<p>
</p>
<p>
</p>
<p>
</p>
</asp:Content>
函数paymentFunction(){
if(document.getElementById(“rbCash”).选中){
document.getElementById(“lbCash”).visible=true;
document.getElementById(“lbCash2”).visible=true;
document.getElementById(“lbCash3”).visible=true;
document.getElementById(“lbCash4”).visible=true;
}
其他的
{
如果(document.getElementById(“rbCreditCard”)。已选中)
{
document.getElementById(“lbCard”).visible=true;
document.getElementById(“lbCardNum”).visible=true;
document.getElementById(“lbCVV”).visible=true;
document.getElementById(“lbexp”).visible=true;
document.getElementById(“ddlCard”).visible=true;
document.getElementById(“tbCnum”).visible=true;
document.getElementById(“tbcvvnum”).visible=true;
document.getElementById(“tbexp”).visible=true;
}
}
}
.style1
{
宽度:100%;
}
.style2
{
宽度:100%;
}
.style3
{
宽度:130px;
}
付款类型:
选择一张卡片
签证
发现
万事达卡
美国运通
感谢您与我们一起购物:
如果在服务器端像现在这样设置Visible=false,那么服务器将不会呈现控件
您可能需要执行以下操作:
<asp:Label ID="lbCash" runat="server" ForeColor="Black"
Text="Please Send Payment To:" style="visibility:hidden" ClientIDMode="Static"></asp:Label>
有什么原因这只适用于现金选择吗?我按照你的建议做了,但信用卡不能空白。我提供了lbCash作为一个例子,说明如何为所有人做。如果它对其他人不起作用,那么还有另一个问题。
document.getElementById('lbCash').style.visibility = 'visible';