-1

我正在尝试向我的网站“添加链接”功能。为此,我正在使用来自 Twitter Boostrap JS 的 Modal 插件。在主页上只有“链接”字段要填写,当用户单击“添加链接”按钮时,会弹出一个模式,用户会看到要填写的完整表单:链接、标题、标签。但是,我希望链接字段预先填充上一步中的值。这类似于您在delicious.com 上“保存链接”时发生的情况。

但是,问题是当我在模态对话框中插入 javascript 时,模态对话框停止工作。任何想法如何解决这个问题?非常感谢!

<html>
<head>
  <title>Example</title>
  <link rel="stylesheet" href="scripts/bootstrap.min.css">
  <link rel="stylesheet" href="main.css" />
</head>
<body>
  <!-- The Modal Dialog  -->
  <div id="modal-from-dom" class="modal hide fade">             
    <div class="modal-body">
        <form id='post-on-wall' method='POST' action='savePost.php' enctype='multipart/form-data'>
                Peter

                <script type="text/javascript">
                    var linkURL = $('#linkURL').val();
                    //document.write("<input type='text' class='label-inline' name='linkURL' id='wall-post' value=linkURL>");
                    document.write(linkURL);
                </script>


                <button type='submit' class='btn'>Add Link</button>
        </form>
    </div>
    </div>
  </div>
  <div class="container">
    <div class="wall-post">
        <textarea class='label-inline' name='linkURL' id='linkURL'></textarea>
        <button data-controls-modal="modal-from-dom" data-backdrop="static" class="btn">Add Link</button>

    </div>
  </div>
  <script src="scripts/jquery.min.js"></script>
  <script src="scripts/bootstrap-modal.js"></script>
</body>
4

1 回答 1

4

有几件小事会阻止您的脚本运行 Arman。

首先是您需要在标题中加载您的 jquery 和引导脚本。浏览器在加载页面时解释页面,当浏览器点击 $("#linkURL") 的位时,它不知道如何处理它。

第二点是您只能在用户单击“添加链接”按钮时知道用户在 LinkURL 框中输入的内容。因此,您只能在那之后真正填充模态框。

鉴于此,您可以利用模型库提供的事件来为您填充它。

如果你把这一切放在一起,你会得到这个:

<html>
    <head>
        <title>Example</title>
        <script src="scripts/jquery.min.js" type="text/javascript"></script>
        <script src="scripts/bootstrap-modal.js" type="text/javascript"></script>
        <link rel="stylesheet" href="scripts/bootstrap.min.css">
        <link rel="stylesheet" href="main.css">

        <script type="text/javascript">

            $(document).ready(function(){
                $('#modal-from-dom').bind('show',function(){
                    $(".modal-body").html($("#linkURL").val());
                });
            });

        </script>
    </head>
    <body>
        <div id="modal-from-dom" class="modal hide fade">
            <div class="modal-header">
                <a href="#" class="close">&times;</a>
                <h3>Add Link</h3>
            </div>
            <div class="modal-body">
            </div>
            <div class="modal-footer">
                <a href="#" class="btn primary">Add Link</a>
            </div>
        </div>
        <textarea class='label-inline' name='linkURL' id='linkURL'></textarea>
        <button data-controls-modal="modal-from-dom" data-backdrop="true" data-keyboard="true" class="btn danger">Add Link</button>
    </body>
  </html>

然后你只需要稍微修改一下内容,你应该是对的!

于 2011-10-21T05:37:09.927 回答