2015-01-25 3 views
0

Я пытаюсь сделать это jquery, что выбранные элементы будут отображаться в текстовом поле, но его не работает, он отлично работает, если он используется в div, который вместо текста ввода используется с помощью div но он не работает в этом следующий код в текстовое полеНеверное изменение текстового поля JQuery

<html> 
<head> 
<style> 
    div { 
    color: red; 
    } 
    </style> 
    <script src="//code.jquery.com/jquery-1.10.2.js"></script> 
    </head> 
    <body> 
    <select name="sweets" multiple="multiple"> 
    <option>Chocolate</option> 
    <option selected="selected">Candy</option> 
    <option>Taffy</option> 
    <option selected="selected">Caramel</option> 
    <option>Fudge</option> 
    </select> 
    <input type="text" name="fname"> 
    <script> 
    $("select") 
    .change(function() { 
    var str = ""; 
    $("select option:selected").each(function() { 
    str += $(this).text() + " "; 
    }); 
    $("fname").text(str); 
    }) 
    .change(); 
    </script> 
    </body> 
    </html> 

ответ

0

Дайте на вход атрибут ID и использовать селектор ID, как:

<input type="text" name="fname" id="myInput"> 

$("#myInput").val(str); 

«имя_файла» не является элементом, так что вы можете» t используйте селектор элементов с ним.

+0

Зачем добавлять идентификатор, когда вы можете выбрать ввод по имени? Никакой дополнительной разметки не требуется – Seth

0

попытка знач вместо текста как

$ ("имя_файла") .val (ул);

+0

Это не сработает, потому что fname не является элементом. – stepanian

0

Произошла ошибка в том, как вы используете jquery здесь jsfiddle. Solution

Вы не использовали $(document).ready() и, кроме того, у вас еще нет назначенного идентификатора и класса, с помощью которого вы можете получить доступ к элементам. Надеюсь, что это помогает :)

1

1) переход от <script src="//code.jquery.com/jquery-1.10.2.js"></script>

в <script src="http://code.jquery.com/jquery-1.10.2.js"></script>

2) Поместите свой яваскрипта код в

$(function({ 
    // your JS code 
})); 

3) Изменение от $("fname").text(str); к $('input[name=fname').val(str);

DEMO

Смежные вопросы