1

現在のセットアップを使用することを主張するクライアントの場合、送信時に asp ファイルを iframe にロードするフォームがあります。

私がこの分野で働いたのはここ数年だけなので、iFrame や ASP を使用した経験はほとんどありません。

フォームはsidebar.phpにあります...

<form method="post" action="http://www.vebra.com/home/quick/PFrefine.asp" name="searchform">
        <dl id="property_search">
          <dt class="bord">Bedrooms</dt>
          <dd><select name="bed" class="type1 Selectrooms">
                  <option selected="selected" value="1">0</option>
                  <option value="2">2</option>
                  <option value="3">2</option>
                  <option value="4">3</option>
                  <option value="5">4</option>
                  <option value="6">5</option>
              </select>
          </dd>

          <dt class="bord">Minimum Price</dt>
          <dd><select class="type2 SelectPrices" name="lop">
                <option value="0" selected>&#163;0</option>
                <option value="25000">&#163;25,000</option>
                <option value="50000">&#163;50,000</option>
                <option value="75000">&#163;75,000</option>
                <option value="100000">&#163;100,000</option>
                <option value="125000">&#163;125,000</option>
                <option value="150000">&#163;150,000</option>
                <option value="175000">&#163;175,000</option>
                <option value="200000">&#163;200,000</option>
                <option value="225000">&#163;225,000</option>
                <option value="250000">&#163;250,000</option>
                <option value="275000">&#163;275,000</option>
                <option value="300000">&#163;300,000</option>
                <option value="325000">&#163;325,000</option>
                <option value="350000">&#163;350,000</option>
                <option value="375000">&#163;375,000</option>
                <option value="400000">&#163;400,000</option>
                <option value="500000">&#163;500,000</option>
                <option value="600000">&#163;600,000</option>
                <option value="700000">&#163;700,000</option>
                <option value="800000">&#163;800,000</option>
                <option value="900000">&#163;900,000</option>
                <option value="1000000">&#163;1,000,000</option>
                <option value="2000000">&#163;2,000,000</option>
                <option value="3000000">&#163;3,000,000</option>
                <option value="4000000">&#163;4,000,000</option>
                <option value="5000000">&#163;5,000,000</option>
                <option value="6000000">&#163;6,000,000</option>
              </select>
          </dd>

          <dt class="bord">Maximum Price</dt>
          <dd><select name="hip" class="type3 SelectPrices">
                <option value="25000">&#163;25,000</option>
                <option value="50000">&#163;50,000</option>
                <option value="75000">&#163;75,000</option>
                <option value="100000">&#163;100,000</option>
                <option value="125000">&#163;125,000</option>
                <option value="150000">&#163;150,000</option>
                <option value="175000">&#163;175,000</option>
                <option value="200000">&#163;200,000</option>
                <option value="225000">&#163;225,000</option>
                <option value="250000">&#163;250,000</option>
                <option value="275000">&#163;275,000</option>
                <option value="300000">&#163;300,000</option>
                <option value="325000">&#163;325,000</option>
                <option value="350000">&#163;350,000</option>
                <option value="375000">&#163;375,000</option>
                <option value="400000">&#163;400,000</option>
                <option value="500000">&#163;500,000</option>
                <option value="600000">&#163;600,000</option>
                <option value="700000">&#163;700,000</option>
                <option value="800000">&#163;800,000</option>
                <option value="900000">&#163;900,000</option>
                <option value="1000000">&#163;1,000,000</option>
                <option value="2000000">&#163;2,000,000</option>
                <option value="3000000">&#163;3,000,000</option>
                <option value="4000000">&#163;4,000,000</option>
                <option value="5000000">&#163;5,000,000</option>
                <option selected value="6000000">&#163;6,000,000+</option>
              </select>
          </dd>
          <dt>Regions</dt><dd><img src="images/spacer.gif" alt="" /></dd>

          <dt><input type="checkbox" name="cou" id="couHertfordshire" value="43"/></dt><dd>Hertfordshire</dd>
          <dt><input type="checkbox" name="cou" id="couLondonNorth" value="126" /></dt><dd>London, North</dd>
          <dt><input type="checkbox" name="cou" id="couLondonNorthWest" value="127" /></dt><dd>London, North West</dd>

          <input type="hidden" name="slo" value="undefined" />
            <input type="hidden" name="fid" value="894" />
            <input type="hidden" name="bid" value="0" />
            <input type="hidden" name="dbt" value="1" />
            <input type="hidden" name="nre" value="undefined" />
            <input type="hidden" name="thu" value="undefined" />
            <input type="hidden" name="vto" value="undefined" />
            <input type="hidden" name="ord" value="undefined"/>
            <input type="hidden" name="nba" value="undefined" />

          <dt><input type="submit" class="search_now" value="Find Property" formtarget="hello" /></dt><dd><img src="images/spacer.gif" alt="" /></dd>
        </dl>
      </form>

そして、test.phpに入れたい結果ページ...

<iframe width="583" height="500" name="hello">iframe</iframe>

残念ながら、ASP ハンドラ ファイルにはまったくアクセスできません。

基本的に、サイドバーのフォームに入力して送信ボタンをクリックすると、ブラウザーが結果ページにリダイレクトされ、iframe に結果が読み込まれます。

それは可能ですか?

4

4 に答える 4

0

iframeに名前を付けてから、フォームのターゲット属性を使用する必要があります。

<iframe src="foo" name="myframe"></iframe>
<form method="post" action="http://www.vebra.com/home/quick/PFrefine.asp" name="searchform" target="myframe">
...
于 2012-05-03T11:58:28.007 に答える
0

JavaScriptとjQueryを使用してフォームを読み取り、それに応じてiframeのURLを変更する例を次に示します。

<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
</head>

<body>
<form id="target" action="javascript:return false;">
  <input type="text" value="http://www.ftd.de" />
  <input type="submit" value="Go" />
</form>

<iframe id="iframe1" src="javascript:false;"></iframe>

<script>
$('#target').submit(function() {
  $('#iframe1').attr('src', $("input:first").val());
});    
</script>
</body>

ライブデモ:

jsfiddle

于 2012-05-03T12:15:44.673 に答える
0

ajaxを使用してフォームデータを投稿するだけです。すべてあなたの支配下にあります。楽しい。

于 2012-05-03T11:51:39.603 に答える