jQuery - 如何将文本值写入隐藏字段供以后使用?

时间:2011-09-20 10:59:32

标签: javascript jquery

我正在使用最新最好的jQuery。

我有一个包含三个文本字段和三个隐藏字段的表单。当您键入文本字段时,该值将被传递到相应的隐藏字段,稍后将通过其他方式访问该字段。

FirstName value should be passed to FirstNameTemp
LastName value should be passed to LastNameTemp
Pseudonym value should be passed to PseudonymTemp

以下代码对我不起作用,但我发誓它昨天正在工作。我正在使用FireFox和Firebug。我可以看到FirstNameTemp更改的值,这似乎在代码中工作正常,但没有其他工作属性。

这有什么问题吗?我错过了一些明显的东西吗?

<input type='hidden' value="" id="FirstNameTemp">
<input type='hidden' value="" id="LastNameTemp">
<input type='hidden' value="" id="PseudonymTemp">

<input type='text' value="" class="Search" id="FirstName"><br>
<input type='text' value="" class="Search" id="LastName"><br>
<input type='text' value="" class="Search" id="Pseudonym"><br>


<script type="text/javascript">
$(document).ready(function() {

$(".Search").keyup(function() {
    var FirstName = $("#FirstName").val();
    var LastName = $("#LastName").val();
    var Pseudonym = $("#Pseudonym").val();
    // COPY ENTITIES TO TEMP ENTITIES
    $("#FirstNameTemp").val(FirstName);
    $("#LastNameTemp").val(LastName);
    $("#PseudonymTemp").val(Pseudonym);
});

});

修改

我打开并关闭了浏览器并重启了我的机器。没有任何效果。所以,我下载了Firefox和FireBug并重新安装。它运作得很好。

感谢各位的帮助和好主意。你们摇滚!!!

2 个答案:

答案 0 :(得分:3)

为什么不这样做:

$(".Search").keyup(function() {

    $('#'+this.id+'Temp').val($(this).val());

});

小提琴:http://jsfiddle.net/each/mtFt6/

答案 1 :(得分:0)

试试这个..

$(document).ready(function() {

    $(".Search").keyup(function() {
       var targetId = "#" + $(this).attr("id") + "Temp";
       $(targetId).val($(this).val());
    });

});