0

私はasp Classicでこのようなフォームを持っています..

<form method="post" name="AddItemForm" id="AddItemForm" action="/files/includes/CartControl.asp" style="display:inline;"> 

// 隠しフィールドの束。

次にSUBMITボタン。

フォームのアクションはすべての非表示フィールドを取得し、それらを処理した後、ユーザーを CART ページにリダイレクトします。

今私がやりたいことは....ユーザーに[カートに追加]ボタンをクリックしてもらいたいのですが、フォームが新しいウィンドウに送信されている間、ユーザーは製品ページに留まりたいです(javascriptの新しいウィンドウではありません...のようなものです)ライトボックス/カラーボックス/ファンシーボックス DIV など)。

多くの jQuery プラグインを調べましたが、満足のいく答えが得られませんでした...どのプラグインが私の場合に最適ですか? 簡単な例はありますか?

基本的に、新しいオーバーレイ div に送信し、その DIV 内でユーザーを新しいページにリダイレクトして製品情報を表示したいと考えています。

ありがとう

4

3 に答える 3

1

非同期フォーム送信のための機能を探しているようです。フォームに AJAX 機能を提供するこのjQuery AJAX Form プラグインがあります。次のようなものがあります。

$('#AddItemForm').submit( function() {
    // Submit asynchronously
    $( this ).ajaxSubmit( function() {
        // Form processing is done
        // Redirect to the shopping cart page
    });

    // Show a modal or a fancy "please wait" message

    // Prevent default submission
    return false;
});
于 2013-02-20T08:46:57.310 に答える
0

(私の見解では)最も簡単な方法は、現在のページが変更されない間に新しいウィンドウを開くフォームにターゲット属性を追加することです...

于 2013-02-20T06:29:33.860 に答える
0

この回答、回答の1つからのコードでいくつかの情報を見つけることができます:

$('input#submitButton').click( function() {
    $.post( 'some-url', $('form#myForm').serialize(), function(data) {
         ... do something with response from server
       },
       'json' // I expect a JSON response
    );
});

「応答で何かをする」では、データまたは URL を取得してオーバーレイ div にロードできます。URL の場合は、 jquery .load を使用できます。

$('#result').load('ajax/test.html');

それがhtml(またはhtmlでラップするデータ)の場合は、次のようにします

$('#result').html(theHTML)
于 2013-02-20T06:46:09.273 に答える