0

使えると思った

$this->get('element_id')

Ajax 関数内の各 DOM 要素の値を取得します。しかし、それはうまくいきません。この方法で取得できるのは Post-Elements だけですよね? しかし、どうすれば他の要素を入手できますか?

ご協力いただきありがとうございます...

これは私のAjaxクラスです:

class Name_Component_Ajax_Folder_Ajax extends Phpfox_Ajax
{
public function test(){

    $iChildItemId = $this->get('element_id');
    var_dump($iChildItemId);
    $this->html('#testdiv', $this->getContent());
}
}

リンクをクリックして、この関数 ( test() ) を呼び出し、入力フィールド (elemnt_id) の値を取得したい

4

2 に答える 2

1

基本的に、Webブラウザ(Firefox、Chromeなど)がサーバーに送信するAJAXリクエストで値を渡すための2つの一般的なソリューションがあります。

POSTリクエストを使用している場合は、期待値を非表示の入力として指定する必要があります<input type='hidden' id='val1' value='value_you_want_to_pass_to_sever'>

GETリクエストを使用している場合は、URLパラメータを使用して渡すことができます(例:www.youserver.com?val1 = value_you_want_to_pass)。

JQueryを使用すると、渡したい値を取得できます。

次に、$ this-> get('val1')を使用して、サーバー側で値を取得できます。

于 2013-01-12T15:54:14.667 に答える
0

これは要素を設定するために機能するはずです:

$this->call('$(\'#js_photo_category_' . $aCategory['parent_id'] . '\').attr(\'selected\', true);');

同じことを使用して値を取得できます

$elementVal = $this->call('$(\'#js_photo_category_' . $aCategory['parent_id'] . '\').val();');

最善の方法は、クライアント側で javascript を使用して foreach を使用して ID を取得し、配列/json に保存してリクエストで送信し、完了したら何かを行うことです。

$.ajaxCall('module.function_name', 'arrayData='+myArray).done(function(data) {
        javascript_function(data);
    });

お役に立てれば

于 2013-09-11T12:46:48.760 に答える