Javascript 无法从select获取值(未定义值)
我试图从我拥有的选择选项列表中获取一个值,该值也是通过javascript生成的,但由于某种原因,我无法检索它Javascript 无法从select获取值(未定义值),javascript,opentok,Javascript,Opentok,我试图从我拥有的选择选项列表中获取一个值,该值也是通过javascript生成的,但由于某种原因,我无法检索它 var a, i, v; v = document.querySelector('#video-setting'); a = document.querySelector('#audio-setting'); i = 0; while (i < audioInputDevices.length) { a.innerHTML += '<option value='
var a, i, v;
v = document.querySelector('#video-setting');
a = document.querySelector('#audio-setting');
i = 0;
while (i < audioInputDevices.length) {
a.innerHTML += '<option value=' + audioInputDevices[i].deviceId + '>' + audioInputDevices[i].label + '</option>';
i++;
}
i = 0;
while (i < videoInputDevices.length) {
v.innerHTML += '<option value=' + videoInputDevices[i].deviceId + '>' + videoInputDevices[i].label + '</option>';
i++;
}
return;
var publisherOptions;
$(document).ready(function() {
var au, audioValue, vi, videoValue;
au = document.getElementById("audio-setting");
audioValue = au.options[au.selectedIndex].value;
vi = document.getElementById("video-setting");
videoValue = vi.options[vi.selectedIndex].value;
});
publisherOptions = {
audioSource: audioValue,
videoSource: videoValue
};
因为您正在匿名函数中定义变量。因此,它们对外部范围代码不可见
$(document).ready(function() {
var au, audioValue, vi, videoValue; //this defines local scope variables
//won't be visible outside this function
...
});
要解决这个问题,因为publisherOptions变量是全局变量,所以只需在ready回调中设置publisherOptions变量
$(document).ready(function() {
...
publisherOptions = {
audioSource: audioValue,
videoSource: videoValue
};
});
因为您正在匿名函数中定义变量。因此,它们对外部范围代码不可见
$(document).ready(function() {
var au, audioValue, vi, videoValue; //this defines local scope variables
//won't be visible outside this function
...
});
要解决这个问题,因为publisherOptions变量是全局变量,所以只需在ready回调中设置publisherOptions变量
$(document).ready(function() {
...
publisherOptions = {
audioSource: audioValue,
videoSource: videoValue
};
});
因为您正在匿名函数中定义变量。因此,它们对外部范围代码不可见
$(document).ready(function() {
var au, audioValue, vi, videoValue; //this defines local scope variables
//won't be visible outside this function
...
});
要解决这个问题,因为publisherOptions变量是全局变量,所以只需在ready回调中设置publisherOptions变量
$(document).ready(function() {
...
publisherOptions = {
audioSource: audioValue,
videoSource: videoValue
};
});
因为您正在匿名函数中定义变量。因此,它们对外部范围代码不可见
$(document).ready(function() {
var au, audioValue, vi, videoValue; //this defines local scope variables
//won't be visible outside this function
...
});
要解决这个问题,因为publisherOptions变量是全局变量,所以只需在ready回调中设置publisherOptions变量
$(document).ready(function() {
...
publisherOptions = {
audioSource: audioValue,
videoSource: videoValue
};
});
jqueryready函数在使用普通JavaScript之前首先启动。因此,当设置audioValue很累时,它将是未定义的。您可以将JavaScript封装在闭包中,也可以将其放入jqueryready语句中
这应该是可行的。您的jqueryready函数在您的普通JavaScript之前首先启动。因此,当设置audioValue很累时,它将是未定义的。您可以将JavaScript封装在闭包中,也可以将其放入jqueryready语句中
这应该是可行的。您的jqueryready函数在您的普通JavaScript之前首先启动。因此,当设置audioValue很累时,它将是未定义的。您可以将JavaScript封装在闭包中,也可以将其放入jqueryready语句中
这应该是可行的。您的jqueryready函数在您的普通JavaScript之前首先启动。因此,当设置audioValue很累时,它将是未定义的。您可以将JavaScript封装在闭包中,也可以将其放入jqueryready语句中
这应该行。您在document.ready回调中声明了“audioValue”和“videoValue”,然后尝试将它们分配给完全不同范围内的对象文字。.您在document.ready回调中声明了“audioValue”和“videoValue”,然后尝试将它们分配给完全不同范围内的对象文字..在document.ready回调中声明了“audioValue”和“videoValue”,然后尝试将它们分配给完全不同范围内的对象文字..在document.ready回调中声明了“audioValue”和“videoValue”,然后你试图把它们分配给一个完全不同的作用域中的对象文字。问题是如果我把publisherOptions放在函数中,我就有了依赖于它的东西。邪恶的圈子。当我试图删除准备就绪的文档时,我无法读取的属性“value”undefined@SebastianJenningsAlmnes,您的发布是全局范围的,依赖它的任何人都可以访问它。只是不要将
var publisherOptions
行放在就绪回调中,让它保持原样。@PatrickEvans当我这样做时,我会得到“Uncaught TypeError:无法读取未定义的属性“value”,它指向audioValue中的我的值variable@SebastianJenningsAlmnes,那么听起来好像代码在.ready()之前运行
调用回调时,应该在调用后运行。问题是,如果我在函数中放入publisherOptions,我就有了依赖于它的内容。邪恶的圈子。当我试图删除准备就绪的文档时,我无法读取的属性“value”undefined@SebastianJenningsAlmnes,您的发布是全局范围的,依赖它的任何人都可以访问它。只是不要将var publisherOptions
行放在就绪回调中,让它保持原样。@PatrickEvans当我这样做时,我会得到“Uncaught TypeError:无法读取未定义的属性“value”,它指向audioValue中的我的值variable@SebastianJenningsAlmnes,那么听起来好像代码在.ready()之前运行
调用回调时,应该在调用后运行。问题是,如果我在函数中放入publisherOptions,我就有了依赖于它的内容。邪恶的圈子。当我试图删除准备就绪的文档时,我无法读取的属性“value”undefined@SebastianJenningsAlmnes,您的发布是全局范围的,依赖它的任何人都可以访问它。只是不要将var publisherOptions
行放在就绪回调中,让它保持原样。@PatrickEvans当我这样做时,我会得到“Uncaught TypeError:无法读取未定义的属性“value”,它指向audioValue中的我的值variable@SebastianJenningsAlmnes,那么听起来好像代码在.ready()之前运行
调用回调时,应该在调用后运行。问题是,如果我在函数中放入publisherOptions,我就有了依赖于它的内容。邪恶的圈子。当我试图删除准备就绪的文档时,我无法读取的属性“value”undefined@SebastianJenningsAlmnes,您的发布是全局范围的,依赖它的任何人都可以访问它。只是不要将var publisherOptions
行放在就绪回调中,让它保持原样。@PatrickEvans当我这样做时,我会得到“Uncaught TypeError:无法读取未定义的属性“value”,它指向audioValue中的我的值variable@SebastianJenningsAlmnes,那么听起来好像代码在.ready()之前运行
调用回调时,应在