我有一个选择项,我已经为它添加了一个默认值,但在提交表单后,它返回一个空字符串。这是为什么?
我的代码:
var c = $('#c').val();
populateSelect(cs, '#c', 'My select option');
function populateSelect(json, element, defaulttext) {
$(element).find('option').remove().end().attr('disabled', false).append($('<option selected>').text(defaulttext).attr('value', ''));
$.each(json, function(i, value) {
$(element).append($('<option>').text(value).attr('value', value));
});
if (defaulttext != undefined) {
$(element).val(defaulttext);
}
}
答案 0 :(得分:0)
虽然您在jQuery中设置了selected
attribute,但实际上并没有为该选择设置value
。您需要将.attr('value', '')
更改为.attr('value', 'default')
之类的内容。要从函数参数传递它,您正在寻找.attr('value', defaulttext)
。
除此之外,您还需要确保select
字段中包含name
attribute,以便在提交表单后获取值。
希望这有帮助! :)