的jQuery
$(document).ready(function () {
$('#ButtonRadioValue').click(function () {
var selValue = $('input[name=radio]:checked').val();
});
});
单选
<div id="radio" align="center">
<input type="radio" id="radio1" value="BtnNextCaseClick" name="radio" checked="checked"/><label for="radio1" style="width: 109px; margin-right:-.9em">Next</label>
<input type="radio" id="radio2" value="CloseCase" name="radio" /><label for="radio2" style="margin-right:-.9em">Close Case</label>
<input type="radio" id="radio3" value="CloseWeb" name="radio" /><label for="radio3" style="width: 109px">Close Web</label>
</div>
所以,在那个收音机下面我有一个按钮,我希望它根据无线电选择执行不同的代码。该值存储在selValue
中。那么我如何告诉onclick
事件运行selValue
按钮
<asp:Button ID="ButtonRadioValue" CssClass="customButton" runat="server" onclick=" js variable here" Text="Aceptar" style="width: 111px; height: 30px"/>
感谢。
修改
因为没有真正需要客户端程序。我是在服务器端使用this.radio1.Checked == true
答案 0 :(得分:1)
听起来你正在寻找eval()
。
var selValue = $('input[name=radio]:checked').val();
eval(selValue);
答案 1 :(得分:1)
Click是一个服务器事件。如果您希望JS代码执行use onclientclick
。
答案 2 :(得分:1)
您可以尝试使用OnClientClick
事件来调用客户端功能
链接:http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.button.onclientclick(v=vs.80).aspx
服务器端:OnClick
客户端:OnClientClick
答案 3 :(得分:1)
更新:看来我误解了所需要的内容,所以我将保留原文
如果您想知道在回发后选择了哪个单选按钮,则可以制作无线电的服务器端控件(转换为<asp:RadioButton>
或只是添加runat="server"
。然后你可以测试radio1.Checked
等等。
否则,您可以使用Request.Form("radio1")
检查表单数据。如果结果是Nothing
(VB.Net)或null
(C#),则未选择无线电。如果那里有值,则表示已选择无线电。
原创/错误的假设
除非我误解了这个问题,否则你不需要在<asp:Button>
中有一个特殊属性,因为你可以在你已经写过的jQuery中做到这一点。
在var selValue...
$("#" + selValue).trigger("click");
生产......
$(document).ready(function () {
$('#ButtonRadioValue').click(function () {
var selValue = $('input[name=radio]:checked').val();
$("#" + selValue).trigger("click");
});
});
有一点需要注意的是,如果控件在Master Page,Placeholder等中,那么该按钮将需要完整的ClientID,否则jQuery将无法找到它
作为旁注,OnClick
的{{1}}属性用于连接事件处理程序,以便回发到服务器。如果您想运行javascript,那么您想使用<asp:Button>
属性,这将在呈现的HTML中生成OnClientClick
属性