带有带有 jQuery 的文本框的对话框

Dialog box with textbox with jQuery

本文关键字:对话框 文本 jQuery      更新时间:2023-09-26

这是我实现带有文本框的对话框的代码:

public static native void showEmailModal(String title)/*-{
    $wnd.$("<div><input id='emailAddresss' type='text'>Test</input></div>")
        .text("Enter email address:")
        .appendTo("body")
        .dialog({
            title: title,
            modal: true,
            width: 400,
            hide: "fade",
            show: "fade",
            buttons: {
                "Send": function() {
                    $wnd.$(this).dialog("close");
                },
                "Cancel": function() {
                    $wnd.$(this).dialog("close");
                }
            }
    });    
}-*/; 

我遇到的问题是输入没有显示在对话框中。我在这里可能缺少什么?

作为函数的一部分,我还需要将文本输入的值发送到方法进行处理。

使用 .text() 方法覆盖内容(包括输入字段)。

请改用这个:

$("<div></div>")
        .html("Enter email address: <input id='emailAddresss' type='text'>")

此外,<input>不能有子节点,即 <input>Test</input>无效。

我不确定这是什么语言/框架,但我会假设非jQuery的东西是正确的。

这一行:

$("<div><input id='emailAddresss' type='text'>Test</input></div>")

创建一个新div ,以及以下行:

.text("Enter email address:")

div元素的文本设置为 Enter email address: ,这将覆盖/删除输入。

此外,input元素是自闭合的:<input type="text" value="Test" />