2

私はこれらの2つのページを持っています:

ページ1:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <title>Test jquery.get()</title>
    <script type="text/javascript" charset="utf-8" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
</head>
<body>
    <div class="result"></div>
    <script type="text/javascript" charset="utf-8">
        $.get('tests.html', function(data) {
        $('.result').html(data);
        alert(data);
        });
    </script>
</body>
</html>

2ページ:

<html>
<body>
    <form action="#" method="get" accept-charset="utf-8">
        <input type="text" name="some_name" value="" id="some_name">
        <p><input type="submit" value="Continue &rarr;"></p>
    </form>
</body>
</html>

最初のページは2番目のページをロードしますが、FirefoxではなくSafariでのみ機能します。私は何が欠けていますか?

4

1 に答える 1

2

現在のコードは、HTML ドキュメント全体のマークアップを<div>要素に挿入しているようです。Firefox は<html><div>.

<form>への呼び出しで、要素へのマークアップを減らしてみてくださいhtml()

$.get("tests.html", function(data) {
    $(".result").html($(data).find("form").html());
});

または、この目的のために設計されたload()を使用してください。

$(".result").load("tests.html form");
于 2013-02-06T21:19:04.713 に答える