如何调用jquery使用jquery设置的选定选项php变量?

时间:2019-07-09 09:50:21

标签: javascript php jquery

我一直在尝试使用JQuery从选项中调用选定的值,但它仅继续传递默认值。选择选项是使用JQuery设置的,因为按下编辑按钮时,该字段将变为select。

我已经尝试过:

$("#tstSelected option").filter(":selected").val();

这:

$( "#tstSelected option:selected" ).text();

似乎没有任何作用


if($(this).hasClass('fa-pencil')){
          $.each(currentTD, function () {
            if($(this).hasClass('editable')){
              if($(this).hasClass('getFromSelect')){
                //$(this).prop('contenteditable', false);
                $(this).html("<select>" + "<?php foreach($test as $tst){ echo "<option id='tstSelected' value='$tst->tst_idx'>". $tst->tst_desc . $tst->tst_idx ."<option>"; } ?>" + "</select>");

              }
              $(this).prop('contenteditable', true);
            }
          });
          $(this).removeClass('fa-pencil')
              .addClass('fa-check')
              editing = true;
        }

然后我像这样调用所选值:


$("#tstSelected option").filter(":selected").val();

但是它不起作用

我只是得到默认值,它是第一个选定值的值

2 个答案:

答案 0 :(得分:2)

尝试将ID分配给select标签:

 if($(this).hasClass('fa-pencil')){
          $.each(currentTD, function () {
            if($(this).hasClass('editable')){
              if($(this).hasClass('getFromSelect')){
                //$(this).prop('contenteditable', false);
                $(this).html("<select id= 'select_tag'>" + "<?php foreach($test as $tst){ echo "<option id='tstSelected' value='$tst->tst_idx'>". $tst->tst_desc . $tst->tst_idx ."<option>"; } ?>" + "</select>");

              }
              $(this).prop('contenteditable', true);
            }
          });
          $(this).removeClass('fa-pencil')
              .addClass('fa-check')
              editing = true;
        }

取所选选项的值,如下所示:

$("#select_tag").val();

答案 1 :(得分:0)

您尝试在option标签内找到option标签。

// Here #tstSelected seems to already be a <option>
// "<option id='tstSelected' ... >"
$("#tstSelected option").filter(":selected").val();

// Add id on <select> instead of <option> and use this. 
$("#tstSelected").val();

这是您需要在php中进行的更改。

$(this).html("<select id='tstSelected'>" + "<?php foreach($test as $tst){ echo "<option value='$tst->tst_idx'>". $tst->tst_desc . $tst->tst_idx ."<option>"; } ?>" + "</select>");