我正在尝试检查选择是文本框还是下拉并相应地执行操作。我有以下代码:
function isSelectOrTextField(id) {
var element = id;
if(element.tagName === 'SELECT') {
var sel = '#' + element
alert( $(sel option :selected).val());
}
if(element.tagName === 'INPUT' && element.type === 'text') {
var tem = $('#' + element).val();
alert(tem);
}
return false;
}
我无法动态附加id。正常的语法是这样的:
$("#yourdropdownid option:selected").text();
由于id是动态的,我不知道如何形成语法。请帮忙
答案 0 :(得分:1)
.val()
功能适用于select
和input
。
.val()
方法主要用于获取表单元素的值,例如input
,select
和textarea
。
所以简单地使用它。
function isSelectOrTextField(id) {
var tem = $('#' + element).val();
alert(tem);
}
答案 1 :(得分:1)
试着像这样使用:
var sel = '#' + element
alert($(sel).val());
$(sel).val()
表示下拉列表的值,表示所选选项的值。
答案 2 :(得分:0)
您想要检索元素本身:
var element = document.getElementById(id);
看起来应该更像:
function isSelectOrTextField(id) {
var element = $('#'+id)[0];
if(element.tagName === 'SELECT') {
alert( $(element).val());
}
if(element.tagName === 'INPUT' && element.type === 'text') {
var tem = $(element).val();
alert(tem);
}
return false;
}
请注意,如果您只是检索该值,jquery将为您处理。