1

私はextjsで働いています。20 の質問と各質問をラジオ ボタンのオプションとともに表示するようなビューを作成したいと考えています。これらの質問は、yii フレームワークを使用してデータベースから取得しています。=としてビューを作成しました

View=

Question.js

Ext.define('Balaee.view.question.Question', {
    extend: 'Ext.form.Panel',
    requires: [
        'Balaee.view.question.QuestionView'],
    id: 'QuestionId',
    alias: 'widget.question',
    title: 'Question',
    height: 180,
    items: [{
        xtype: 'questionView',
    },

    ], //end of items square
    buttons: [{
        xtype: 'button',
        fieldLabel: 'Vote',
        name: 'vote',
        formBind: true,
        text: 'submit',
        action: 'voteAction',
    }]
});

QuestionView.js

Ext.define('Balaee.view.question.QuestionView', {
    extend: 'Ext.view.View',
    id: 'QuestionViewId',
    alias: 'widget.questionView',
    store: 'Question',
    config: {
        tpl: '<tpl for=".">' +
            '<div id="main">' +
            '</br>' +
            '<b>Question :-</b> {question}</br>' +
        //'<p>-------------------------------------------</p>'+

        '<tpl for="options">' + // interrogate the kids property                  within the data
        '<p>&nbsp&nbsp<input type="radio" name="opt" >&nbsp{option} </p>' +
            '</tpl></p>' +

            '</div>' +
            '</tpl>',
        itemSelector: 'div.main',
    }
});

グループラジオボタンを使用してオプションを表示し、送信ボタンをクリックすると、ユーザーが選択したすべてのラジオボタンオプションがユーザーのオプションとして表示されるようにする方法.助けてください...

4

2 に答える 2

0

1 つのページに複数の質問が必要ですよね??

まず、tpl を少し変更する必要があります

            '<p>&nbsp&nbsp<input type="radio" name="opt{questionNumber}" >&nbsp{option} </p>'+

その後、Ext.dom.Queryを使用して入力を簡単にクエリできます。

xtype:'button',
fieldLabel:'Vote',
name:'vote',
FormBind:true,
text:'submit', 
listeners: { 
    click: function(btn,e,eOpts) {
         var answers = Ext.core.DomQuery.select("input[type='radio']:checked");

          //e.g.: sending the data via AJAX-call to the server
          Ext.Ajax.request({
            url: ' //e.g. answers.php',
            method: 'POST',
            params: {
                answers: answers
             },
            success: function(response) {
               //do something
            },
            failure: function(response) {
                //do something
            }
    }
 }

これにより、チェックされたすべてのラジオボタンが返されます!

于 2013-01-03T10:42:47.707 に答える
0

この例を確認してください。役に立つと思いますhttp://cdn.sencha.com/ext-4.1.1a-gpl/examples/form/check-radio.html

于 2013-01-03T22:32:48.977 に答える