Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Заменить select на input через JQUERY (https://javascript.ru/forum/jquery/52433-zamenit-select-na-input-cherez-jquery.html)

ufaclub 19.12.2014 00:56

Заменить select на input через JQUERY
 
есть форма в ней код такой

<select name="Длина96" id="Длина_field" class="inputboxattrib">
 <option value="100_см">100 см</option>
 .....
<option value="1000_см">1000 см</option>
</select>


мне нужно всю конструкцию select заменить на input type="text"


<input type="text" value="" name="Длина96" >



чтобы name input было такое же как и в select (а после создания поля импут происходило бы как бы удаления селекта из DOM кода, ну чтобы значение селекта не передавало формой а только значение импута)

Помогите пожалуйста

krasovsky 19.12.2014 08:16

Задача просто таки высочайшей сложности, целых две строки кода
<select name="length96" id="length_field" class="inputboxattrib">
 <option value="100_см">100 см</option>
<option value="1000_см">1000 см</option>
</select>

var  select = $('[length96]');
select.replaceWith( $('<input>',{name:select[0].name,value:select[0].value}) )

ufaclub 19.12.2014 23:27

а как быть с тем что число 96 в length96 постоянно будет разным?

мне нужно что типа аналога length* (где * = число от 0 до 9999)

krasovsky 20.12.2014 17:57

Цитата:

Сообщение от ufaclub
а как быть с тем что число 96 в length96 постоянно будет разным?

Оно будет жить своей жизнью и эволюционировать?
Ты бы не мог случаем объяснять что тебе нужно вразумительно, я просто в выходные принципиально не читаю чужие мысли.

ufaclub 21.12.2014 20:41

я про то что на разных старицах будет по разному

на одной так
<select name="length96" id="length_field" class="inputboxattrib">
 <option value="100_см">100 см</option>
<option value="1000_см">1000 см</option>
</select>


на другой так
<select name="length92" id="length_field" class="inputboxattrib">
 <option value="100_см">100 см</option>
<option value="1000_см">1000 см</option>
</select>


на третей так
<select name="length91" id="length_field" class="inputboxattrib">
 <option value="100_см">100 см</option>
<option value="1000_см">1000 см</option>
</select>



а мне нужно чтобы скрипт
var  select = $('[length96]');
select.replaceWith( $('<input>',{name:select[0].name,value:select[0].value}) )


был един и работал для разных типов значения select#length_field

krasovsky 22.12.2014 07:59

Цитата:

Сообщение от ufaclub
я про то что на разных старицах будет по разному

В зависимости от чего? Если ты выводишь 96\92\91 с помощью пхп(или чего там у тебя) и если скрипт определен прямо на странице, то и скрипте выводи эту переменную.
Если тебя несколько вручную созданных сраниц и ты на каждой хардкодишь одну и ту же форму с разными значениями, то думаю если будешь хардкодить еще и один и тот же скрипт с разными значениями - шарма твой код не потеряет.

В иных случаях, можешь вместо var select = $('[length96]');
писать select = $('#length_field');, либо испоьзовать jq .filter()


Часовой пояс GMT +3, время: 04:04.