2012-02-16 3 views
0

私はjquery-mobileを発見していますが、実際には初心者にはあてはまらないドキュメントがあります。イベントの使い方は?

私はラジオボタンを備えたフィールドセットを持っています。ユーザーがボタンを "チェック"すると、ajax呼び出しでPHPセッションで値を保存する方法を教えてください。

<fieldset data-role="controlgroup"> 
    <legend>Choose a pet:</legend> 
    <input type="radio" name="radio-choice-1" id="radio-choice-1" value="choice-1" checked="checked" /> 
    <label for="radio-choice-1">Cat</label> 

    <input type="radio" name="radio-choice-1" id="radio-choice-2" value="choice-2" /> 
    <label for="radio-choice-2">Dog</label> 

    <input type="radio" name="radio-choice-1" id="radio-choice-3" value="choice-3" /> 
    <label for="radio-choice-3">Hamster</label> 

    <input type="radio" name="radio-choice-1" id="radio-choice-4" value="choice-4" /> 
    <label for="radio-choice-4">Lizard</label> 
</fieldset> 

答えて

1

jQueryの例で簡単に始めることができますが、jQueryについてよく知っていますか?

ハンドラをラジオボタンのchangeイベントにバインドし、セッション変数を設定するPHPのAJAX呼び出しを起動する必要があります。 onまたはlive機能のためのjQueryのドキュメントを参照してくださいハンドラをバインドする

$(document).ready...

$('input[name="radio-choice-1"]').live('change', function(){ 
    var value = $(this).val(); 

    $.ajax({ 
     //see jQuery ajax functions 
    }); 
}); 



しかし、jQueryのモバイル上でのようなもの:

あなたが使用する必要があります複数のシングルページテンプレートとajaxトランジションをさらに使用している場合は、このコードをdocument.readyではなく実行するためのjQM(jQuery Mobile)のpageinitイベントその場合は、現在のページだけのバブリングされたイベントを聴くために、ライブの代わりにon関数を使用する必要があります。

そして、それはUが変更ハンドラをバインドし、

save.php内容は

だろう
$('input[name="radio-choice-1"]').live('change', function(){ 
var selectedValue = $(this).val(); 

$.post("save.php", {optionSelected: selectedValue}); 
}); 

を次のようにAJAX呼び出しを発射する必要が

$('#yourPage').on('change', 'input[name="radio-choice-1"]', function(){

+0

このようにしていただきありがとうございます。 – bahamut100

+0

jQuery Mob ileは助けられ、本当にトリックです。ありがとう。 – Sameer

1

に似でしょう
<?php 
session_start(); 
$_SESSION['radio-choice-1-option'] = $_POST['optionSelected']; 
?> 
+0

これはjQueryと似ています – bahamut100

関連する問題