获取URL附加的复选框值
Get Checked Box Value for URL Append
我有两个脚本。一个获取复选框值,另一个将附加我的<a>
标记。两者都可以单独工作,但我需要将"str"的值放在我的url附加脚本中,而我似乎无法使其工作。
我的获取复选框看起来像:
<script>
var checked, checkedValues = new Array();
$(document).on('change', 'input[type=checkbox]', function(e) {
checked = $('input[type=checkbox]:checked');
checkedValues = checked.map(function(i) { return $(this).val() }).get();
$('.aaa').html(checked.length + ' are checked');
if (checked.length) {
var str = checkedValues.join();
});
</script>
我的第二个附加url的脚本如下:
<script>
$('.nextquestion').attr('href', function() {
this.href = this.href + '&answers=+str+';
});
</script>
我正在尝试将"str"的值放在我的url中。有人能帮忙吗?
可能str在第二个脚本的函数中不可访问,您可能需要将其设置为全局变量
var str
if (checked.length) {
str = checkedValues.join();
});
$('.nextquestion').attr('href', function() {
//here first check if str has value
this.href = this.href + '&answers=+str+';
});
尝试使用:
window.history.replaceState();
以下是我为此使用的一些辅助功能:
var addUrlParam = function (param, value) {
var originalUrlArray = window.location.href.replace(/#/g, "").replace(/!/g, "").split("?");
var query = originalUrlArray[1] || false;
var vars = query ? query.split("&").clean("") : [];
vars.push(param + "=" + value);
var newQueryString = vars.join("&");
var newUrl = originalUrlArray[0] + "?" + newQueryString;
window.history.replaceState(null, null, newUrl);
};
var updateUrlParam = function (paramToUpdate, newValue) {
var originalUrlArray = window.location.href.replace(/#/g, "").replace(/!/g, "").split("?");
var query = originalUrlArray[1];
var vars = query.split("&");
var newVars = vars.slice();
var matches = vars.searchFor(paramToUpdate);
if (matches) {
for (var i = 0; i < matches.length; i++) {
var pair = vars[matches[i]].split("=");
if (pair[0] === paramToUpdate) {
pair[1] = newValue;
newVars[matches[i]] = pair.join("=");
}
}
var newUrl = originalUrlArray[0] + "?" + newVars.join("&");
window.history.replaceState(null, null, newUrl);
}
};
相关文章:
- 在URL中发布多个变量并使用复选框
- 更新 url 而不重新加载,具体取决于使用 jquery/javascript 选择的复选框
- JS将复选框中的值添加到URL,然后单击转到URL
- 获取选中复选框的所有值,并将其用于url字符串
- HTML5/Javascript验证复选框提交URL重定向
- 获取URL附加的复选框值
- JavaScript 从表单元素处理复选框创建 URL
- 如何根据选中的复选框更改表单操作 URL
- jQuery,如何通过选中复选框来调用 url
- 在复选框中存储表单操作URL'的值,并且使用该URL发出AJAX请求会导致无法解释的失败
- onclick复选框将复选框值附加到URL
- 根据复选框检查并设置url变量
- 根据页面背面的url编辑复选框
- 如何使复选框指向url
- 获取一个URL来决定复选框的值
- 删除带有复选框的lastIndexOf url
- 使用jQuery筛选复选框-保留URL中的选择
- 从复选框值生成URL.mvcPattern
- 选择复选框值显示在URL与参数使用Php Javascript
- 基于复选框在iframe上传递URL