我有一个从php文件(getdata.php
)获取一些json数组数据的函数。此函数需要select选项元素中的字符串数据类型变量,在下一步中将使用getdata.php
。
我使用var text = $('#element option:selected').text();
来创建我的变量。我确定这个var文本包含正确的文本值(我试图使用alert显示它并显示出来)。但是,当我将它传递给我的函数时,这个文本值似乎与应该使用的数据类型不匹配。我不知道这样做的结构。在getdata.php
中,我使用此var来完成mysql查询。我使用$_GET
来获取该变量。我尝试使用var number=$('#element option:selected').val();
并且它有效,但.text()
它运行不正常。
我真的很感激任何解决这个问题的建议。谢谢。
下面是我的脚本功能代码。
$("#element1").change(function(){
var text = $('#element option:selected').text();
getAjaxData(text);
});
function getAjaxData(text){
$.getJSON("getdata.php",{text:text} ,function(json){
//some operations here
}
答案 0 :(得分:4)
如果它是textarea或输入字段,则必须使用.val( )
。
来自jQuery文档:
.text()方法不能用于表单输入或脚本。要设置或获取input或textarea元素的文本值,请使用.val()方法。要获取脚本元素的值,请使用.html()方法。
答案 1 :(得分:1)
$(#element).text()
不会从输入中返回值或选择。
要从输入中获取值,请选择您需要使用.val()
函数。
$(#element).val()
将在选择框
获取您需要在代码
下使用的所选选项的文本 var text = $("#element option:selected").text();
获取您需要在代码
下使用的所选选项的值 var value = $("#element option:selected").val();
或
var value = $("#element").val();
答案 2 :(得分:0)
试试这个:
$("#element1").change(function(){
var text = $('#element').val();
getAjaxData(text);
});
function getAjaxData(text){
$.getJSON("getdata.php",{text:text} ,function(json){
//some operations here
}