【问题标题】:Convert jQuery option value to a non-object将 jQuery 选项值转换为非对象
【发布时间】:2014-09-16 14:06:36
【问题描述】:

我正在尝试将选项的 var 文本传递给 jquery 中的加载事件,但代码没有返回选项值的文本,我相信它正在返回一个对象。如何获取选项选择的字符串值。这是到目前为止的代码

var statevar = $("#stateselect option:selected").val();



$( "#stateselect").change(function() {
console.log($( "#stateselect option:selected").val());
$( "#FactoryPricing" ).load("/include/StateSelection.php"+"?stateSELECT="+statevar);
});

});

php 变量 stateSELECT= 在尝试调用该变量时返回空白。

【问题讨论】:

  • 请不要更改问题以表明它们何时解决,在答案中添加绿色勾号将标记为这样。
  • 明白了,如果可以的话,是否需要调整标题中的拼写错误?

标签: php jquery variables object


【解决方案1】:

试试这个:

console.log( $("#stateselect option:selected").text() );

示例

<option value="3" selected="selected">Three</option>

$("...... option:selected").text(); // returns "Three"

$(this).val(); // returns "3"

更新

您可能正在寻找这个:

$( "#FactoryPricing" ).load("/include/StateSelection.php"+"?stateSELECT="+this.value);

如:

$(function() {
    var statevar = ""; 


    $( "#stateselect").change(function() {
        statevar = this.value;
        $( "#FactoryPricing" ).load("/include/StateSelection.php"+"?stateSELECT="+statevar);
    });

});

【讨论】:

  • console.log 返回变量很好。当我尝试在其他任何地方使用该变量时,它显示为空白。例如,如果我做 var="AL" statevar 会工作,但如果我使用 jquery $("#stateselect option:selected").val();它返回空白。但在 console.log 中,它确实显示为状态选择的选项非常尴尬
  • 当这样做时它返回 stateSELECT=Select 例如 我需要返回 value="AL" 的值而不是里面的文本
  • 完美!谢谢,这正是我所需要的,你介意解释一下为什么会这样吗?因为那令人难以置信
  • 仅仅是因为您在选择选项之前获取了 statevar,并将这个“空”值提交给您的 PHP 脚本。如果您希望 statevar 包含当前值,您应该在“更改”处理程序中分配它。
  • ahhhhhh 愚蠢的错误是有道理的!你太棒了,现在没有足够的代表来支持,但我把它作为答案。一旦我用这个名字建立一个代表就会回来,通常我在家里登录,但我现在在工作。谢谢!
猜你喜欢
  • 2012-04-17
  • 2023-03-30
  • 2015-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-18
  • 2012-10-09
  • 1970-01-01
相关资源
最近更新 更多