如何使用JQuery {h 44

时间:2016-02-06 12:45:19

标签: php jquery ajax

我有以下select标签,其选项标签由php动态生成:

<select  class="form-control "  name="list" id="list" onchange="" >
   <!-- option tags are dynamically generated-->    
</select>

这些是将动态生成的一些示例选项:

<option value="1">Item-1</option>
<option value="2">Item-2</option>
<option value="3">Item-3</option>

当我使用var_dump($_POST)时,我array (size=1) 'list' => string '1'选择Item-1选项。但我想将'list' => string 'Item-1'等选项文字传递给$_POST。我还需要原始选项value.i尝试这个ajax但没有工作:

$("#list").val(this.options[this.selectedIndex].text);

那么ajax我需要以正确的方式做到这一点。谢谢

1 个答案:

答案 0 :(得分:1)

您只需将选项值设置为您想要接收的文本:

<option value="Item-1">Item-1</option>
<option value="Item-2">Item-2</option>
<option value="Item-3">Item-3</option>

或者您可以像这样获得选项文本和值:

var optionText = $("#list option:selected").text();
var optionValue = $("#list").val();

然后通过jQuery.ajax()请求将其发送到服务器:

$.ajax({
  method: "POST",
  url: "yourFile.php",
  data: { text: optionText , val: optionValue }
})
  .done(function( result ) {
      // handle the result
  });

yourFile.php中,您将拥有此$_POST数据:

array(
   'text' => 'selected option text',
   'val' => 'selected option value',
)