MVC3脚本函数放置 - 奇怪的行为

时间:2013-11-25 15:26:44

标签: c# jquery asp.net-mvc-3 jquery-ui-dialog

以下是该方案:

我。点击一个按钮。

II。活页夹jQuery(document).on("click",buttonSelector,callback),主要是:

  • 创建<div id="popup-wrapper"></div>元素
  • href 按钮加载到此↑div。

AND FINNALY,作为回调

使用

初始化对话框
jQuery("#popup-wrapper").dialog({
         title: "Sample Title",
         close: function () {
                    jQuery("#wizard").steps("destroy"); // plugin's method
                    // or even jQuery("#wizard").remove() via jQuery
                    jQuery(this).dialog("destroy").remove(); 
                },
         modal: true,
         width: 'auto',
         height: 'auto'
});

III。在新打开的UI对话框中,我们有一个名为jQuery Steps向导插件。这是部分视图

    @{
       Layout=null;
     }
    <link rel="stylesheet" href="@Url.Content("~/Scripts/System/jQuery-steps/jquery.steps.css")">
    <script type="text/javascript" src="@Url.Content("~/Scripts/System/jQuery-steps/jquery.steps.js")"></script>

    <div id="wizard">
        <h3>First step</h3>
        <section class="step-content">
            //other code
            <input type="text" id="datepicker-obj"> // Another partial with jQuery(doc).ready .... initialize datepicker()
        </section>
    </div>

    <script type="text/javascript">
    jQuery(document).ready(function () {
       jQuery("#wizard").steps({
            headerTag: "h1",
            bodyTag: "section",
            transitionEffect: "slideLeft",
            stepsOrientation: "vertical"
        });
      });
    </script>

IV。一切都很好。 steps插件已初始化,datepicker效果良好。

V。我关闭了UI对话窗口。

VI。然后调用close: function(){.... }         1. Steps() object被摧毁。         2.对话为destroyedremoved

VII。我再次点击 按钮,重复 I-III 的步骤

问题

1.在第二个UI Dialog调用steps向导内的所有内部插件后,无法正常工作。例如:日期选择器没有显示。

临时解决方案

如果我更改脚本,要高于<div id="wizard"></div>,就像这样:

   <script type="text/javascript">
    jQuery(document).ready(function () {
       jQuery("#wizard").steps({
            headerTag: "h1",
            bodyTag: "section",
            transitionEffect: "slideLeft",
            stepsOrientation: "vertical"
        });
      });
    </script>

    <div id="wizard">...</div>

然后一切都很好

问题

这样结果的解释是什么?为什么脚本功能定位在这种情况下很重要?

谢谢你

0 个答案:

没有答案