Javascript jquery一次更改多个输入类型

Javascript jquery一次更改多个输入类型,javascript,jquery,html,woocommerce,Javascript,Jquery,Html,Woocommerce,我已经创建了一些其他线程,但到目前为止没有任何有效的答案 我有以下代码: jQuery(function ($) { $('.nm-myaccount-login-inner .form-row .lawrence_password span.required').append( "<div class='hide-show'><span toggle='#password' class='fa fa-fw field-icon toggle-password fa-eye'&

我已经创建了一些其他线程,但到目前为止没有任何有效的答案

我有以下代码:

jQuery(function ($) {
$('.nm-myaccount-login-inner .form-row .lawrence_password span.required').append(
"<div class='hide-show'><span toggle='#password' class='fa fa-fw field-icon toggle-password fa-eye'></span></div>");

$('.nm-myaccount-login-inner .form-row .lawrence_register_password span.required').append(
"<div class='hide-show'><span toggle='#password' class='fa fa-fw field-icon toggle-password fa-eye'></span></div>");
});

jQuery(function($){
  $(".toggle-password").click(function() {

  $(this).toggleClass("fa-eye fa-eye-slash");
  var input = $($(this).attr("toggle"));
  if (input.attr("type") == "password") {
    input.attr("type", "text");
  } else {
    input.attr("type", "password");
  }
});


});
jQuery(函数($){
$('.nm myaccount登录内部.form row.lawrence_密码span.required')。追加(
"");
$('.nm myaccount login-inner.form row.lawrence\u register\u password span.required')。追加(
"");
});
jQuery(函数($){
$(“.toggle password”)。单击(函数(){
$(this.toggleClass(“fa-eye-fa-eye-slash”);
变量输入=$($(this.attr(“切换”));
if(input.attr(“type”)=“password”){
input.attr(“类型”、“文本”);
}否则{
输入属性(“类型”、“密码”);
}
});
});
这样做的目的是在“.lawrence_password span”和“lawrence_register_password span”中添加一个可点击的图标。 然后,当用户单击图标时,输入密码的类型将从:
更改为
,因此密码将可见

但是,这只影响我的第一个输入字段,而不是我的所有

我希望此jquery函数适用于所有

我的html:

<p class="form-row form-row-wide">
                    <label for="password" class="lawrence_password">Password <span class="required">*<div class="hide-show"><span toggle="#password" class="fa fa-fw field-icon toggle-password fa-eye-slash"></span></div></span></label>
                    <input class="input-text" type="text" name="password" id="password">
                </p>

密码*

寄存器密码输入与此相同,它只有类“lawrence_password_register”


这可能吗?谢谢大家!

我想你需要做的就是使用
class
而不是
id
。如果在
中更改
属性,其中每个
都有类
class=“someClass”

下面是一个示例,我在输入上设置了
class=“password”
,然后在您的
。。。这就是你需要改变的一切

jQuery(函数($){
$('.lawrence_密码span.required')。追加(
“切换按钮”);
$('.lawrence_register_password span.required')。追加(
“切换按钮”);
$(“.toggle password”)。单击(函数(){
变量输入=$($(this.attr(“切换”));
if(input.attr(“type”)=“password”){
input.attr(“类型”、“文本”);
}否则{
输入属性(“类型”、“密码”);
}
});
});

密码*

密码寄存器*


您可以包含您的html吗?请将其放在Snippet上。我编辑了这篇文章以包含html:)您的
输入
变量的目标是
id
,它们应该是唯一的,因此它将只返回一个元素。此html显示1个输入,我想检查的是每个输入的id,因为你似乎有更多的id,这是因为@msgDo解释的原因,你想让按钮显示它对应的
input
或同时显示每个密码字段?因为他想更改这两个字段。。为什么要针对他们?只需使用一个类。这将允许您简化第一个函数。好的,我错过了。让我快速改变我的答案。感谢提醒@msgI可能误解了“我希望这个jquery函数适用于所有密码字段”,尽管他基本上想使用一个代码库,即使他添加了更多的
,我回家后会测试它!谢谢:)