我正在努力理解数组语法。我有 6 组复选框,理想情况下,我希望能够将响应(选中 = 1 或关闭 = 0)发送到查询字符串中,以便在此表单履行的另一侧进行解析。
我已经包含了到目前为止的内容并且它可以工作,但我希望我的 URL 更短并且更有效地到达那里。
当前 URL:(http://domain/index.html?t1a=0&t1b=1&t2a=0&t2b0
想象一下这个有 30 个参数)
目标网址:http://domain/index.html?t1=01&t2=00
HTML 示例:
<form>
<div id="checkbox-topic1">
<input name="topic1" class="interest-checkbox" id="topic1a" type="checkbox" />
<input name="topic1" class="interest-checkbox" id="topic1b" type="checkbox" />
</div>
<div id="checkbox-topic2">
<input name="topic2" class="interest-checkbox" id="topic2a" type="checkbox" />
<input name="topic2" class="interest-checkbox" id="topic2b" type="checkbox" />
</div>
</form>
jQuery 示例:
function appendURLQueryString() {
var customURL = $("#custom-url");
// TOPIC 1 ================//
var t1a = 0;
if ($('#topic1a').is(':checked')) {
t1a = 1;
}
var t1b = 0;
if ($('#topic1b').is(':checked')) {
t1b = 1;
}
// TOPIC 2 ================//
var t2a = 0;
if ($('#topic2a').is(':checked')) {
t2a = 1;
}
var t2b = 0;
if ($('#topic2b').is(':checked')) {
t2b = 1;
}
var tempURL = ('http://domain/index.html?t1a=' + t1a + '&t1b=' + t1b + '&t2a=' + t2a + '&t2b=' + t2b);
customURL.attr("value", tempURL);
}
谢谢!