javascript - 使 HTML 元素在 JQuery 对话框窗口中更新后保持可见

标签 javascript jquery html

假设我有一个表单,用户需要在其中选择一些字段。

提交后,我想对字段是否被选择进行一些错误检查,如果没有,我将提供一个对话框窗口,说明错误消息以及从对话框窗口内选择/更新字段的可能性。

我可以打开包含包含字段选择的 div 的对话框窗口,但在常规页面中,此 div 将消失。

如何使此 div 在对话框窗口打开或关闭期间和之后保持可见?

请参阅下面或 JSFiddle 处的代码片段

$('#submit').click(function() {

  var $dialog = $('<div></div>')
    .html('You forgot something, update below')
    .dialog({
      title: 'check',
      buttons: {
        OK: function() {
          $(this).dialog("close");
        }
      }
    });

  $dialog.dialog('open');

  $dialog.append($('.classSelector'));


});
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-1.9.1.js"></script>
<script src="https://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>

General page to make selection
<div class='classSelector'>
  <p>select car:
    <select>
      <option selected disabled>car type</option>
      <option value="volvo">Volvo</option>
      <option value="saab">Saab</option>
      <option value="opel">Opel</option>
      <option value="audi">Audi</option>
    </select>
  </p>
</div>
<p>
  <button id='submit'>Submit</button>
</p>

最佳答案

在 $dialog.dialog('open') 之后执行以下代码:

$dialog.append($('.classSelector').clone());

使用 .clone 将允许您复制整个 classSelector div,但原始 div 仍将在页面上。

关于javascript - 使 HTML 元素在 JQuery 对话框窗口中更新后保持可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33645814/

相关文章:

在对象数组上使用函数变量时的 Javascript 'undefined'

javascript - .hover 在与 .html 一起使用时不起作用

javascript - jquery 中的 .bind 方法不起作用

php - 将 Javascript 字符串传递给 PHP 输出

JavaScript 正则表达式。获取图片src

javascript - WooCommerce:停止滚动到结帐页面上的错误消息

javascript - jQuery 在演示期间使用箭头键滚动

javascript - Flickr Json 调用 API

javascript - 从 CSS 径向渐变的顶行像素获取颜色值

javascript - axios:onUploadProgress 事件仅在视频完全上传后触发