[英]How can i get text option from AJAX generated select dropdown using jQuery?
[英]Cannot get option text when using dynamic select dropdown in jquery
在这里,我正在使用jquery在select下拉列表中获取选项文本
tmp_selected = $('#new_autoccType option:selected').text();
但是,我无法使字符串相等,无法在警报中获得正确的选项文本。 如果字符串相等,则不会进入if循环。 仅当我使用动态选项值时,这才起作用;如果它是静态的,则可以获取值。
有人可以帮忙吗?
var def_expval=""; var newEC = 1; var strNewCC = 1; data = '<select class="tablefont" name="new_autoccType" id="new_autoccType">'; data+='<option value= '+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+newEC+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+' > '+"New Electronic Check"+' </option>'; data+='<option value= '+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+strNewCC+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+','+def_expval+' > '+"New Debit/Credit Card"+' </option>'; data +='</select>'; $("#somedivs").html(data); $('#new_autoccType').change(function() { selOption = $(this).val(); tmp_selected = $('#new_autoccType option:selected').text(); alert(tmp_selected); if(tmp_selected == "New Electronic Check") { alert("inside ec"); //some operations } if (tmp_selected == "New Credit/Debit Card") { alert("inside cc"); //some operations } }).change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div id="somedivs"></div>
尝试删除空格,此操作可以使用修剪功能
var tmp_selected = $('#new_autoccType option:selected').text().trim();
同样对于第二个条件更改文本
从if (tmp_selected == "New Credit/Debit Card")
到if (tmp_selected == "New Debit/Credit Card")
您的字符串中有空格使用$ .trim(tmp_selected)函数删除空格
if(tmp_selected == " New Electronic Check ")
{
alert("inside ec");
//some operations
}
if (tmp_selected == " New Debit/Credit Card ")
{
alert("inside cc");
//some operations
}
使用trim()
从所选文本中删除空格,如下所示:
var tmp_selected = $('#new_autoccType option:selected').text().trim();
尝试这个
$('#new_autoccType').change(function() {
selOption = $(this).val();
tmp_selected = $('#new_autoccType option:selected').text();
alert(tmp_selected);
if(tmp_selected.trim() == "New Electronic Check")
{
alert("inside ec");
//some operations
}
if (tmp_selected.trim() == "New Debit/Credit Card")
{
alert("inside cc");
//some operations
}
}).change();
使用$ .trim(tmp_selected)进行共映射,删除空间
$('#new_autoccType').change(function() {
selOption = $(this).val();
tmp_selected = $('#new_autoccType option:selected').text();
alert(tmp_selected);
if($.trim(tmp_selected) == "New Electronic Check")
{
alert("inside ec");
//some operations
}
if ($.trim(tmp_selected) == "New Credit/Debit Card")
{
alert("inside cc");
//some operations
}
}).change();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.