使用单选按钮根据表单输入转到URL
Go to URL based on form input using radio buttons
如何仅使用所选的单选按钮显示在URL中?我总是使用第一个单选按钮,无论选择哪个:
<form id="urlForm">
<div id="bounds">
<label><input type="radio" name="toggle" id="key"><span>On</span></label>
<label><input type="radio" name="toggle" id="key"><span>Off</span></label>
</div>
</form>
<script>
$(document).ready(function() {
$('#urlForm').submit( function() {
goUrl = '/?constraint=' + $('#key').val() + '+' + $('#key2').val();
window.location = goUrl;
return false; // Prevent the default form behaviour
});
});
</script>
您的无线电输入应该有唯一的id。
<label><input type="radio" name="toggle" id="key1" value="on"><span>On</span></label>
<label><input type="radio" name="toggle" id="key2" value="off"><span>Off</span></label>
和你的JavaScript是接近的,但由于你是通过ID选择(这并不完全工作的单选按钮),你需要改变你的选择器的单选输入:
$(document).ready(function() {
$('#urlForm').submit( function() {
window.location = '/?constraint=' + $('input[name="toggle"]:checked').val();
return false; // Prevent the default form behaviour
});
});
$('input[name="toggle"]:checked')
:这将选择一个name属性设置为toggle
的表单输入,并进行检查。这可以完成任务,但这是一个相当低效的选择器。
这是一个jsfiddle: http://jsfiddle.net/jasper/HFBwH/
不应该有两个具有相同ID的元素。使用:
HTML:<form id="urlForm">
<div id="bounds">
<label><input type="radio" name="toggle" id="key1" value="On"><span>On</span></label>
<label><input type="radio" name="toggle" id="key2" value="Off"><span>Off</span></label>
</div>
</form>
JavaScript: $(document).ready(function() {
$('#urlForm').submit( function() {
goUrl = '/?constraint=' + $('#key1:checked, #key2:checked').val();
window.location = goUrl;
return false; // Prevent the default form behaviour
});
});
小提琴在这里:http://jsfiddle.net/cgyeY/
注:你真的不需要return false;
部分,因为你正在从页面导航…
您的代码中有几个问题。
首先:你应该使用。preventdefault()函数来防止默认事件的发生。
第二:你的HTML中有两个元素具有相同的ID。id必须是唯一的。
第三:你的单选按钮上缺少value
属性
修复后,您可以使用下面的代码片段来获取单选按钮的值…$('input:radio[name=bar]:checked').val();
相关文章:
- 需要URL模板占位符查找和替换功能的输入
- 如何存储&读取输入字段中的任意url
- 如果未输入URL,则隐藏按钮
- 提交的表单重定向到输入URL
- eBay 查找 API findItemsByKeywords 返回“输入 URL 为标头 X-EBAY-SOA-OPE
- 在文本框中输入 URL 时执行 JavaScript 事件
- AngularJS输入url无效/有效/错误
- AngularJS-处理手动输入URL状态的最佳方式
- 用户输入URL
- 为什么当路径正确时,图像无法从CSS加载,而当直接输入URL时加载
- 输入url时,AngularJS HTML子路由不显示
- javascript url拆分,用于在表单中手动输入url
- 如何从输入URL获取html源
- JavaScript用户输入URL不持有我的域
- 设置窗口.位置vs.输入url
- 当在JS浏览器中输入url时,偏移一个散列标签链接以调整固定的标题
- 在IE9地址栏中粘贴/输入URL有效,但在href或window.open中无效
- 在html中输入url的模式不匹配
- URL重定向基于输入,但如果输入URL不存在,则不重定向无法使PHP工作
- javascript中的Bookmarklet,提示用户输入URL参数并输出该参数的值