使用jquery可以使用图像的attr设置隐藏的输入值

使用jquery可以使用图像的attr设置隐藏的输入值,jquery,Jquery,比如说,我有一些图片 <img class="selectImage" src="..." value="John" /> <img class="selectImage" src="..." value="Sally" /> <img class="selectImage" src="..." value="Joe" /> 单击图像时,我希望 <input type="hidden" name="First Name" /> 要成为

比如说,我有一些图片

<img class="selectImage" src="..." value="John" />
<img class="selectImage" src="..." value="Sally" />
<img class="selectImage" src="..." value="Joe" />

单击图像时,我希望

 <input type="hidden" name="First Name" />

要成为“value=”的值,请尝试

jQuery(function($){
    var hinput = $('input[name="First Name"]');
    $('.selectImage').click(function(){
        hinput.val($(this).attr('value'))
    })
})
演示:

试试看

jQuery(function($){
    var hinput = $('input[name="First Name"]');
    $('.selectImage').click(function(){
        hinput.val($(this).attr('value'))
    })
})
演示:

我建议使用a将数据与元素关联,而不是
属性,正如其他人所说,该属性是无效的标记

将html更改为如下格式:

<img class="selectImage" src="..." data-firstname="John" />
您的要求的完整代码如下所示:

var x = $("selector").data("firstname");//get
$("selector").data("firstname", x);//set
$('.selectImage').click(function(){
    var firstName = $(this).data("firstname");
    $('input[name="First Name"]').val(firstName);
});

我建议使用a将数据与元素关联起来,而不是使用
属性,正如其他人所说,该属性是无效的标记

将html更改为如下格式:

<img class="selectImage" src="..." data-firstname="John" />
您的要求的完整代码如下所示:

var x = $("selector").data("firstname");//get
$("selector").data("firstname", x);//set
$('.selectImage').click(function(){
    var firstName = $(this).data("firstname");
    $('input[name="First Name"]').val(firstName);
});

我认为
.attr()
已经被弃用了。应该改用
.prop()
。@ArvindBhardwaj不适用于此用例。。。这里的
value
是html元素中的一个属性。我想
.attr()
已经被弃用了。应该改用
.prop()
。@ArvindBhardwaj不适用于此用例。。。此处
value
是html元素中的一个属性感谢我更正了适当的标记以反映此评论感谢我更正了适当的标记以反映此评论