Как обновить отделение когда на избранном изменении в jQuery

Вместо создания радиокнопок при каждом нажатии кнопки next, вы можете просто изменить значение text этих кнопок, чтобы отобразить новые ответы.

Вот один из способов сделать это. Этот код создаст радиокнопки с ответами на первый вопрос при нажатии start и продолжит обновлять вопросы и ответы при нажатии next:

var=tk.StringVar()
var.set('Click start')
l1=tk.Label(window,textvariable=var)
l1.pack()
radio_buttons = []

def show_first(radio_buttons, b1):
    global num, radio_buttons, var
    for idx in range(1, 5):
        radio_buttons.append(tk.Radiobutton(window, text=value[num][num+idx], variable=v, value=idx))
        radio_buttons[-1].pack()
    var.set(value[0][0])
    b1.config(text='next', command=lambda: next_and_judge(radio_buttons))

def next_and_judge(radio_buttons):
    global num, score, value, var
    if var.get()==value[num][5]:
        score+=10
    num=num+1
    for idx in range(1, 5):
        radio_buttons[idx-1].config(text=value[num][num+idx])
    var.set(value[num][num])

b1=tk.Button(window,text='start')
b1.config(command=lambda: show_first(radio_buttons,b1))
b1.pack()
7
задан bobince 10 March 2009 в 04:13
поделиться

3 ответа

Попробуйте что-то как этот:

<select id="choose">
    <option value="test1">Test1</option>
    <option value="test2">Test2</option>
    <option value="test3">Test3</option>
</select>
<div id="update"></div>

<script type="text/javascript">
    $('#choose').change(function(event) {
        $('#update').html('This is ' + $('#choose').val() + ' and other info');
    }); 
</script>

Если Вы хотите сделать его с Ajax, изменить функцию JavaScript на что-то как этот:

<script type="text/javascript">
    $('#choose').change(function(event) {
        $.post('info.php', { selected: $('#choose').val() },
            function(data) {
                $('#update').html(data);
            }
        );            
    });
</script>

И в Вашем info.php, у Вас будет что-то как:

<?php

    $selected = isset($_POST['selected']) ? $_POST['selected'] : 'nothing';
    echo("This is $selected and other info");
24
ответ дан 6 December 2019 в 06:04
поделиться

Общее представление:

$(function() {
   $("#msel").change(function(){
      $("#myresult").html("This is " + $("#msel").val() + " and other info");
   });
});

С большим количеством специфических особенностей я могу добиться большего успеха.;-)

3
ответ дан 6 December 2019 в 06:04
поделиться

Это самый простой способ, который я нашел (из этого удобного форума)

<!-- the select -->
<select id="thechoices">
    <option value="box1">Box 1</option>
    <option value="box2">Box 2</option>
    <option value="box3">Box 3</option>
</select>

<!-- the DIVs -->
<div id="boxes">
    <div id="box1"><p>Box 1 stuff...</p></div>
    <div id="box2"><p>Box 2 stuff...</p></div>
    <div id="box3"><p>Box 3 stuff...</p></div>
</div>

<!-- the jQuery -->
<script type="text/javascript" src="path/to/jquery.js"></script>
<script type="text/javascript">

$("#thechoices").change(function(){
    $("#" + this.value).show().siblings().hide();
});

$("#thechoices").change();

</script>
2
ответ дан 6 December 2019 в 06:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: