0

私は2つの古典的なaspファイルを持っています。ダイアログを作成してロードで開くdefault.aspdefault2.aspdefault2.aspは、いくつかのコントロールと、いくつかのアクティビティを実行してダイアログを閉じるjavascript関数を呼び出すリンクを示しています

これはChromeでは正常に機能しますが、IE 9.0では機能しません。理由は誰にもわかりませんか?高く評価されます。

ありがとう

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
    <title>Default.asp</title>
  <link rel="stylesheet" href="/jquery/themes/base/jquery-ui.css" />
  <script src="/JQuery/jquery-1.9.1.js"></script>
  <script src="/JQuery/jquery-ui.js"></script>

  <style>
    body { font-size: 85.5%; }
    div#mydiv { width: 350px; margin: 20px 0; }
  </style>

<script>
$(document).ready(function(){
    var MyDlg = $( "#mydiv" );
    MyDlg.dialog({
                autoOpen: false,
                 closeOnEscape: true,
                 modal: true,
                 width: 300,
                 height: 400,
                 modal: true,
                 resizable: true,
      buttons: {
        Cancel: function() {
          MyDlg.dialog( "close" );
          }
               }
    });



$("#Opendlg").click(function() {
  MyDlg.load("Default2.asp").dialog("open");
});

});
</script>

</head>
<body>
This is a test form-1
<br><br>

<% 
Dim FName, LName
FName = Request.form("fname")
LName = Request.form("lname")

Response.write("The First name was := " & FName & " and Last name was:=" & LName )
%>

<br><br>
<form ID=Form1 method="post" action="Default.asp">
First Name: <input type="text" name="fname"><br>
Last Name: <input type="text" name="lname"><br><br>
<input type="submit" value="Submit">
</form>
<br><br>

<input type="button"  class="ui-widget" ID="Opendlg" value="Open Dialog"/>

<div id="mydiv"  title="Product Wizard">
</div>

</body>
</html>

------------------------------------- Default2.asp ---------- ------------------------------

<script type="text/javascript">
$(function() {
    $('#Form2').submit(function(evt) {
        evt.preventDefault();
        $.ajax({
            url: "Default2.asp", 
            type: 'POST',
            data: $(this).serialize(),
            success: function(result) {
                $('#mydiv').html(result);
            }
        });
    });
});

var MyDlg = $( "#mydiv" );

$(".ui-widget-overlay").click (function () {
    MyDlg.dialog( "close" );
});

function CloseMe()
{
 $("#mydiv").dialog("close");
}

</script>

This is Default2.asp file
<br><br>

<% 
Dim Name, Address
Name = Request.form("Name")
Address = Request.form("address")

Response.write("The Name was " & Name & " and Address was " & Address )
%>
<a href="Javascript:CloseMe();">Close Me</a>

<br><br>
<form ID=Form2 >
Name: <input type="text" name="Name"><br>
Address: <input type="text" name="address"><br><br>
<input type="submit" value="Submit">
</form>
4

2 に答える 2

0
$(this).closest('.ui-dialog-content').dialog('close'); 

試してみてください。ダイアログが閉じます。

于 2013-03-19T05:35:18.803 に答える
0

Chromeでは正常に動作するがIEでは動作しないGoogleAPIを使用していることがわかったので、これらの参照をJQuery.comからダウンロードしたJQueryファイルに置き換え、IEでテストしたところ、質問に記載されているこの問題に対してすべて正常に動作します。

答えてくれてありがとう、そして彼らの最善を尽くして私を助けようとしました:)

IEでこれらを使用する代わりに

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js

ダウンロードしてローカルフォルダに保存した後に使用します。

于 2013-03-20T23:27:40.153 に答える