Проблема с jQuery, возвращающим значение из поля <select> - PullRequest
1 голос
/ 06 декабря 2011

Я использую jquery для получения значения из поля выбора, поэтому я могу опубликовать его в сценарии php через ajax.Проблема в том, что я получаю «неопределенное» значение все время, где, как я ожидаю, оно будет значением из списка <selec>.

Вот пример (выберите значение из списка категорий и нажмитеотправить): http://jsfiddle.net/Rug9S/1/

, поскольку вы можете видеть, независимо от того, какое значение выбрано, вы получаете "неопределенное" значение.

HTML

<form name="create" method="post" action="">
            <fieldset>
                <select name="category" id="sc_category">
                    <option value="Select a category" selected="">Select a category</option>
                    <option value="Love">Love</option>
                    <option value="Work">Work</option>
                    <option value="Sex">Sex</option>
                    <option value="Money">Money</option>
                    <option value="Kids">Kids</option>
                    <option value="Health">Health</option>
                    <option value="Friends">Friends</option>
                    <option value="Education">Education</option>
                    <option value="Other">Other</option>
                </select><span id="sc_info">Choose the most relevant category for your story.</span><br />
                <label class="error" for="category" id="category_error">Please select a category</label><br />



                <input type="submit" name="submit" class="button" id="submit_btn" value="Submit" />   
            </fieldset>
        </form>

java-скрипт

$(document).ready(function() {
    //Story Form
    $('.error').hide();
    $(".button").click(function() {

        $('.error').hide();
        var category = $("input#sc_category").val();
        if (category == "") {
            $("label#category_error").show();
            $("input#sc_category").focus();
            return false;
        }

        var dataString = 'category=' + category;
        alert(dataString);
        return false;

    });
});

Я включил только элемент select в задницу формы, все остальные элементы (input / textareas ...) работают нормально.

Ответы [ 3 ]

1 голос
/ 06 декабря 2011

Чтобы получить выбранное значение, это похоже на

$ ('# sc_category option: selected'). Val ();

1 голос
/ 06 декабря 2011

изменить эту строку

 var category = $("input#sc_category").val();

на

  var category = $("#sc_category").val();
1 голос
/ 06 декабря 2011

sc_category не относится к типу "input", это тип select.

Использование: $ ( "# Sc_category") Вал (). или же $ ( "# Выберите sc_category") Val ();.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...