在引导模式弹出窗口结束时,想要在主窗体上设置文本框的值

On close of Bootstrap modal popup want to set the value of Textbox on main form

本文关键字:窗体 置文本 模式 结束 窗口      更新时间:2023-09-26
我是Bootstrap

设计的新手,目前正在我的 ASP.NET MVC5项目中使用它的Bootstrap v3.1.1版本。

我正在打开一个关于"编辑个人资料"的表单,单击按钮并编辑一些字段,例如电子邮件。我想做的是在模态弹出窗口结束时将它们反映在主窗体上。

这是我的代码:

$('#EditProfile').on('hidden.bs.modal', function () {
debugger;
var newEmail = $("#txtEmailId").val();
$("#txtEmail").val() = newEmail;// = newEmail;
});

此外,我使用以下代码在主窗体上显示电子邮件ID:

<tr>
    <th>Email</th>
        <td>
            <input readonly id="txtEmail" name="txtEmail" type="text" class="form-control"placeholder="Email" size="254" style="width: 200px;"/>
       </td>
</tr>

您需要使用:

$("#txtEmail").val(newEmail);

而不是:

$("#txtEmail").val() = newEmail;

Bootstrap 3 文档引用了您可以使用的两个事件

hide.bs.modal:调用隐藏实例方法后,将立即触发此事件。
hidden.bs.modal:当模态完成对用户隐藏时,将触发此事件(将等待 CSS 转换完成)。

并提供了如何使用它们的示例:

$('#myModal').on('hidden.bs.modal', function () {
   $("#txtEmail").val(newEmail);
});

建议您在此处阅读有关 .val() 的更多信息

附加说明(与您的问题无关)不要像使用此样式那样在 html 中使用内联样式width: 200px;

你必须使用 :

$("#txtEmail").attr('value',newEmail);

而不是

$("#txtEmail").val() = newEmail; 

在您的代码中。

试试这个:

$("#txtEmail").text(newEmail);

或者这个:

$("#txtEmail").html(newEmail);