使用Javascript创建select元素并设置值
我需要用Javascript创建一个表单来解决CORS问题(意思是:我不能使用AJAX提交此表单,因为我使用的API不允许) 但是,我在使用Javascript设置值时遇到问题。以下内容不适用于我:使用Javascript创建select元素并设置值,javascript,forms,Javascript,Forms,我需要用Javascript创建一个表单来解决CORS问题(意思是:我不能使用AJAX提交此表单,因为我使用的API不允许) 但是,我在使用Javascript设置值时遇到问题。以下内容不适用于我: var form = document.createElement("form"); var formElement = document.createElement("select"); formElement.value = "foo"; formElement.id = "bar"; fo
var form = document.createElement("form");
var formElement = document.createElement("select");
formElement.value = "foo";
formElement.id = "bar";
form.appendChild(formElement);
document.body.appendChild(form);
请参阅。尝试使用
setAttribute
方法而不是value
var form=document.createElement(“表单”);
var formElement=document.createElement(“选择”);
setAttribute('value','foo');
formElement.id=“bar”;
form.appendChild(formElement);
文件.正文.附件(表格)代码>选择
元素有选项
元素与之配套:
var formElement = document.createElement("select");
var optionElement = document.createElement("option");
optionElement.value = "foo";
optionElement.text = "foo"
optionElement.selected = true;
formElement.appendChild(optionElement);
formElement.id = "bar";
演示:首先需要创建选择列表(在创建选项之前):
然后将其添加到表单中:
form.appendChild(selectList);
然后,您可以创建该选项并将其附加到选择列表中:
var option = document.createElement("option");
option.value = 'foo';
option.id = 'bar';
option.selected = true;
option.text = 'foobar';
最后,将其附加到选择列表
,然后将表单附加到正文
selectList.appendChild(option);
document.body.appendChild(form);
请参阅请考虑减去1的原因。我发布的代码有效且有效。select
元素需要选项,否则它只是一个空白选择。您的代码没有改变OP的任何内容,您使用的是setAttribute
,而不仅仅是定义属性。这是错误的。如果使用原始代码进行检查,则在select元素上看不到value属性。通过使用setAttribute
您可以添加此道具,这就是问题所在:“但是我在设置值时遇到问题”也许您应该将您的问题从设置选择值更新为设置选项值。我所知道的是,我需要设置一个服务器可以获取的值。如果我知道这是选项,我就不会问堆栈溢出问题了。谢谢,我会将此标记为答案(因为这是第一个)。
selectList.appendChild(option);
document.body.appendChild(form);