我使用以下代码从URL中获取信息以预填表单,但是,如果提供了多个选项,我试图使用多重选择。
$(function() {
//grab the entire query string
var query = document.location.search.replace('?', '');
//extract each field/value pair
query = query.split('&');
//run through each pair
for (var i = 0; i < query.length; i++) {
//split up the field/value pair into an array
var field = query[i].split("=");
//target the field and assign its value
$("input[name='" + field[0] + "'], select[name='" + field[0] + "']").val(field[1]));
}
});
多选示例
<select name='strings' id="strings" multiple style="width:100px;">
<option value="Test">Test</option>
<option value="Prof">Prof</option>
<option value="Live">Live</option>
<option value="Off">Off</option>
<option value="On">On</option>
</select>
我希望能够做http://www.example.com?strings=Test,Prof或类似的事情。我是JQuery的新手,并不确定这一点。
答案 0 :(得分:1)
您可以传递数组作为设置int first = String.valueOf(123456).charAt(0) - '0';
选择值的值。
一种简单的方法,寻找multiple
的存在来指示多个值(如果,
是其他字段值中的有效字符,那么做更聪明的事情):
,
var query = 'strings=Test,Prof';
//extract each field/value pair
query = query.split('&');
//run through each pair
for (var i = 0; i < query.length; i++) {
//split up the field/value pair into an array
var field = query[i].split("=");
//target the field and assign its value
var parts = field[1].split(',');
if (parts.length > 1)
$("select[name='" + field[0] + "']").val(parts);
else
$("input[name='" + field[0] + "'], select[name='" + field[0] + "']").val(field[1]);
}
答案 1 :(得分:0)
你可以在这个小提琴中使用javascript:http://jsfiddle.net/yqh5u762/
document.getElementById("strings")[2].selected = true;
document.getElementById("strings")[1].selected = true;
您无法告诉复选框更改它的值,因为只允许一个,但您可以告诉各个选项显示所选内容。这确实需要您使用与选项数组相关的索引号。