javascript - jQuery:将选定的下拉选项设置为 html 字符串

标签 javascript jquery html

我将包含 html 的字符串附加到主 div 中。该字符串包含由某些我无法修改的函数生成的下拉列表。现在,对于包含带有下拉列表的 html 的字符串,我想设置下拉列表的选项,然后附加 div

var stringHtml = "<div> <select>"+ someFunction() + "</select></div>";
jQuery('#mainDiv').append(stringHtml);

所以上面的 someFunction() 有助于获取选择的选项,然后附加选项

我想做这样的事情

jQuery(stringHtml).find("select option[value=\"" + sumeValue + "\"]").attr('selected', 'selected');

然后附加 html,以便我选择所需的值

谢谢

最佳答案

这里的问题是您仍在将字符串本身插入到页面中。然而,您应该插入的是调用 jQuery(stringHtml) 时创建的 jQuery 对象,因为这是受您的代码影响的对象。结果应如下所示:

var stringHtml = "<div> <select>"+ someFunction() + "</select></div>";
var html = jQuery(stringHtml); //save the whole string as an object
html.find("select").val(sumeValue); // alter the object
jQuery('#mainDiv').append(html); // insert the whole object to the page

这是fiddle 。请注意轻微的优化 - 无需创建这个复杂的选项选择器,您只需设置选择器本身的值即可。

关于javascript - jQuery:将选定的下拉选项设置为 html 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22606908/

相关文章:

javascript - 位置相对div得到不同的偏移量

javascript - Ajax 获取响应数据 undefined

javascript - 如何将分钟转换为时间(hh :mm:ss)?

javascript - 在不同的 div 中选择名称相似的元素?

javascript - 如何在特定条件下取消popState

html - 悬停菜单边框未显示在 IE 11 中的 iframe 上

javascript - 不确定如何将 gridster.serialize() 与 Gridster jQuery 插件一起使用

javascript - 使用 jQuery 将 header (<h1> -- <h6> 标签)解析为有序列表?

javascript - 调用特权函数的父实现

javascript - 上传新图片时清除缩略图?