Jquery mobile Jquery Mobile:如何根据文本框值将数据动态添加到选择菜单

Jquery mobile Jquery Mobile:如何根据文本框值将数据动态添加到选择菜单,jquery-mobile,Jquery Mobile,我是jquery mobile的新手。在我的UI中,有一个文本框和一个选择菜单。最初选择菜单为空。如果文本框值大于1,则会向选择菜单添加一些数据,否则选择菜单为空。为此,我在更改select menu时调用该函数,但它不起作用。谁能帮帮我吗 编辑: 例: $(“#目标_时间”).bind(“焦点”,函数(事件,用户界面) { 如果(目标权重var.val()>0) { Goal_WtVar=Math.abs(weightVar.val()-Goal_weightVar.val()); 最小

我是jquery mobile的新手。在我的UI中,有一个文本框和一个选择菜单。最初选择菜单为空。如果文本框值大于1,则会向选择菜单添加一些数据,否则选择菜单为空。为此,我在更改select menu时调用该函数,但它不起作用。谁能帮帮我吗

编辑:

例:

$(“#目标_时间”).bind(“焦点”,函数(事件,用户界面)
{   
如果(目标权重var.val()>0)
{
Goal_WtVar=Math.abs(weightVar.val()-Goal_weightVar.val());
最小持续时间=Math.round(目标时间*2.2);

对于jQuery Mobile文档中所说的(var i=0;i),您必须通过调用
$('select').selectmenu();

如果它仍然不起作用,你将不得不发布一些示例代码,这样我就可以看一看

编辑

实际上,这甚至不是必需的。如果您有一个空的
,您可以通过
$('to append')添加选项。append('A')

select的
onchange
事件可能不是执行此操作的正确事件。select只要为空,就不会更改,因此您的事件将永远不会被触发。请尝试文本框的
blur
事件


嗯,这是一个很好的例子:

JS

$('Goal#u WeightVar').live('change',function(){
var weightVar=0;//仅用于测试
var goalWeightVar=$('Goal#u WeightVar').val();
如果(目标权重大于0)
{
Goal_WtVar=Math.abs(weightVar-goalWeightVar);
最小持续时间=Math.round(目标时间*2.2);
对于(var i=0;i

我必须使用哪种方法?onchange()或者其他任何东西如何将包含数字的变量附加到选择菜单?因为我添加了变量名,所以它显示的是相同的变量,而不是它所包含的值。我编辑了问题plz REFERET,很抱歉我之前没有回答,我现在才看到这个注释。如果像上面的示例一样使用
append
,您可以提供HTML字符串保存新选项的值和文本的g。谢谢,它正在工作。但我想删除以前的数据,并在值更改时添加新数据。如何在文本框或选项中执行此操作?
$('#Goal_Time').bind( "focus", function(event, ui) 
{   
    if(Goal_WeightVar.val() > 0)
    {
        Goal_WtVar = Math.abs(weightVar.val() - Goal_WeightVar.val());
        Min_DurationVar = Math.round(Goal_WtVar * 2.2);
        for(var i=0;i<10;i++)
        {
            $('#Goal_Time').append('<option value=Min_DurationVar>Min_DurationVar</option>');
        }       
    } 
});
$('#Goal_WeightVar').live('change', function() {
    var weightVar     = 0; // for testing only
    var goalWeightVar = $('#Goal_WeightVar').val();

    if(goalWeightVar > 0)
    {
        Goal_WtVar = Math.abs(weightVar - goalWeightVar);
        Min_DurationVar = Math.round(Goal_WtVar * 2.2);
        for(var i=0;i<10;i++)
        {
            $('#Goal_Time').append('<option value='+Min_DurationVar+'>'+Min_DurationVar+'</option>');
        }      
        $('#Goal_Time').listview('refresh'); 
    } 
});
<div data-role="page" id="Goal_Time_Page">
    <div data-role="content">
        <label for="Goal_WeightVar">Goal Weight:</label>
        <input type="text" name="Goal_WeightVar" id="Goal_WeightVar" value="" />
        <label for="Goal_Time" class="select">Goal Time:</label>
        <select name="Goal_Time" id="Goal_Time">
            <!-- Add options here -->
        </select>
    </div>
</div>