2013-08-16 2 views
0

У меня есть этот вход:ввода скрыто

<input id="tag1" type="text" name="tags" class="tags" value="@Model.list" /> 

и я хочу, чтобы получить это значение входного сигнала в скрытом вход, так что я использовал:

<input type="hidden" name="tag" value="tags" /> 

Вместо того, чтобы истинное значение первый вход, я получаю только строку «теги»! Не могли бы вы рассказать мне, как получить истинное значение первого ввода в моем скрытом вводе? Благодаря!

EDIT: На самом деле это страница отправки, пользователь вводит теги в # tag1, и когда он нажимает на submit, я хочу отправить эти теги моему контроллеру, поэтому я использую скрытый ввод ... My полный код:

<form> 
     <p> 
     <input id="tag1" type="text" name="tags" class="tags" value="@Model.list" onblur="setValue()"; /></p> 
     <script> 
      $('#tag1').tagsInput({ 
       // my parameters here 
      }); 

     </script> 
<style> 
#wrapper { 
margin: 20px;  
} 


</style> 



    <p> 
     <input type="submit" value="Create" /> 
     <input type="hidden" name="taggg" id="tag2" /> 
     <script type="text/javascript"> 
      function setValue() { 

       document.getElementById("tag2").value = document.getElementById("tag1").value; 
      } 

      window.onload = setValue; 
     </script> 


    </p> 


    </form> 

+1

С некоторыми JavaScript, я думаю. Пойдите на это. Но почему вы этого хотите? Разве это не будет так же? – putvande

+0

Какова ваша интерпретация * hidden *? вы имеете в виду пароль, или вы имеете в виду, что поле ввода должно быть невидимым? –

+0

u нужно использовать Javascript .. u дал значение как теги для типа ввода = скрытый. Очевидно, u получит то, что значение u дало для этого скрытого ввода. Используйте javascript, и вы можете присвоить значение скрытому полю ввода. .. –

ответ

0

Я не понимаю, почему вы хотели бы скопируйте значение одного поля ввода в другое (хотя и скрытое). Но если это то, что вы хотите сделать, попробуйте использовать приведенный ниже код.

Функция, связанная с событием поля ввода, будет устанавливать значение поля ввода в скрытое поле всякий раз, когда он теряет фокус.

window.onload = setValue будет делать то же самое на странице нагрузки.

HTML

<input id="tag1" type="text" name="tags" class="tags" value="@Model.list" onblur="setValue();" /> 
<input type="hidden" name="tag" value="tags" id="tag1_hidden" /> <!-- Note the addition of an id attribute --> 

JavaScript

function setValue() { 
    document.getElementById("tag1_hidden").value = document.getElementById("tag1").value; 
} 

window.onload = setValue; 
+0

Я пробовал прямо сейчас – caj

+0

Спасибо!первый вход # tag1 - это входные теги JQuery (http://xoxco.com/projects/code/tagsinput/), поэтому, когда загружается страница, на входе есть 5 тегов (@ Model.list). Пользователь имеет возможность удалять текущие теги или добавлять новые. Проблема всегда, в скрытом вводе # tag2 я получаю @ Model.list, даже если пользователь удалил все теги и вставил новые! любая идея, почему значение # tag1 не меняется и всегда является @ Model.list? Большое вам спасибо. :) – caj

+0

Вы вызвали функцию на 'onsubmit' формы или на' onblur' поля ввода, как указано в моем ответе? Могу ли я просмотреть полный код? Любая ссылка? – Harry

0

вы можете сделать, как это (и вы будете нуждаться в JavaScript для этого).

Дайте идентификатор для вашего скрытого ввода также как:

<input type="hidden" id="hidden_input" name="tag" value="tags" /> 

, а затем использовать/вставить этот код, когда вам это нужно:

var input_value = document.getElementById('tag1').value; 
document.getElementById('hidden_input').value = input_value; 
0

Попробуйте

<input id="tag1" type="text" name="tags" class="tags" value="@Model.list" /> 
<input type="hidden" name="tag" value="tags" id="tag2" /> 

Jquery:

$("#tag2").val($("#tag1").val()); 

или

$("#tag1").blur(function() { 
    $("#tag2").val($(this).val()); 
}); 
Смежные вопросы