使用 jquery 分配 html 并从表单中获取值

Assign html using jquery and get value from within form

我们有一个如下形式的 jQuery 对话框:

$("<div></div>").dialog({
    buttons: myButtons,
    close: function(event, ui) { $(this).remove(); },
    resizable: false,
    title: title,
    modal: true,
    width: my_width
}).html(message);

当消息只是文本时,这非常有效。但是,现在我们要在消息中包含一个输入字段。我们无法访问输入字段的值。

消息如下:

'Enter some text.<br/><br/><form><input id="field1"></input></form>'

我们的问题是,当我们尝试使用 document.getElementById('field1').value 访问输入字段的值时,DOM 元素显然不存在,我们还没有找到访问用户条目的方法.

在用户提交对话框后,我们需要做什么来获取该元素的值?

如果您在 运行 代码之前关闭对话框,您将无法获得该值,因为您正在调用 $(this).remove(),这会从 DOM。您需要在 close 处理程序中获取值。