通过发送选项选择。 jQuery的

时间:2010-04-04 01:00:32

标签: javascript jquery

我通过jquery发送id时遇到了一些问题。 我有一个带有一些值的表单选择,我想在更改选项选择时“抓取”id。

输出错误:[object Object] !! :/

<select name="case_name" id="case_id">
            <option value="10009" >Case 1</option>
            <option value="10010" >Case 2</option>
            <option value="10011" >Case 3</option>
            </select>



    var PARAMS = { "case_id": 10009 }; 

$("#case_id").change(function() {  
    var CASE_ID = $(this).val();
    var PARAMS = { "case_id": CASE_ID };
    alert(CASE_ID);
});

2 个答案:

答案 0 :(得分:3)

var CASE_ID = $("#case_id option:selected").val();

答案 1 :(得分:3)

CASE_ID在匿名函数中定义,仅在此函数内有效。在回调中,您只需将选择框称为this

$("#case_id").change(function() {
    var CASE_ID = $(this).val();
});

在匿名函数之外,它不存在。

var PARAMS = { "case_id": CASE_ID };

修改change回调以包含PARAMS对象。

$("#case_id").change(function() {  
    var CASE_ID = $(this).val();
    var PARAMS = { "case_id": CASE_ID };

});

或者再次获取值

var PARAMS = { "case_id": $("#case_id").val() };

或者可以定义一个将新选定值传递给的函数:

function sendValue(value) {
    var PARAMS = { "case_id": value };
    // send the value somewhere
}

$("#case_id").change(function() {
    var CASE_ID = $(this).val();
    sendValue(CASE_ID);
});