2017-01-31 141 views
1

我有很多输入字段与type="text"HTML:分组输入字段

<input type="text" id="..."> 
<input type="text" id="..."> 
<input type="text" id="..."> 
... 
<input type="text" id="..."> 
<input type="text" id="..."> 
<input type="text" id="..."> 

我想从每个输入打字type="text"阻止。有没有什么办法可以像这样对输入进行分组:

<inputgroup type="text"> 
    <input id="..."> 
    <input id="..."> 
    <input id="..."> 
</inputgroup> 

该解决方案可以使用HTML,Javascript或任何其他的WEB编码。

+0

你要删除所有类型的属性? –

+0

不需要脚本,只需省略类型......正如Quentin已经回答 – LGSon

回答

0

你必须使用JavaScript/jQuery来实现你在找什么。这里是你正在寻找的DEMO

<!--Group all your input fields within a 'div' and give this div a unique ID--> 
    <div id="inputGroupText"> 
     <input id='a' /> 
     <input id='b' /> 
     <input id='c' /> 
    </div> 

<script> 
    $(document).ready(function(){ 
      //iterate through the div which groups all the 'input' fields 
      $('#inpuGroupText').children('input').each(function() { 
       // you can substitute 'text' with 'email', 'password' etc. depending on your need 
       $(this).attr('type', 'text'); 
      }); 
    }); 
</script> 

注意:如果你只是想避免编写type='text'那么你可以忽略它,因为“文”是“类型”属性的默认值,所以如果浏览器会自动考虑输入字段type=text如果您没有指定它的价值。

+1

谢谢,我会用你的解决方案! @Saumil Soni –

+0

@BrenGinthom Glad可以提供帮助。 –

1

有一种方式来组的意见:<fieldset><legend>但这是基于什么将要进入他们(例如,当你有多个字段组成的不同将它们分组地址的一部分)。

在HTML中,没有办法明确地设置type属性。

也就是说,type="text"默认,所以你可以简单地完全省略属性(除非你依赖于它的其他原因,比如用CSS属性选择器)。


您也可以编程方式生成HTML(例如使用模板语言)。

+0

Down voteer,care to comment? ... upvoted! – LGSon

2

您可以创建一个javascript函数动态地注入一个div里面输入标签

(function(){ 
var inject=''; 
for(var i=0;i<10;i++){ 
    inject+="<input type='text' value='"+i+"' id='id_"+i+"'/><br/>" 
} 
$('#inject').html(inject); 

})(); 


<div id="inject"> 
//input tags will be injected here after function execution 
</div> 

演示:https://jsfiddle.net/abk0hvts/

+0

如果这解决了您的问题,那么选择它作为正确答案,以便将来帮助他人。 –

-1

相同的解决方案,但代码更具可读性:)

<script> 
    $(document).ready(function() { 
     var parent = document.getElementById('autobot'); 
     var tags = parent.getElementsByTagName('input'); 
     for (var i = 0; i < tags.length; i++) { 
     tags[i].setAttribute('type', 'text'); 
     } 
    }); 
</script> 

<div id="autobot">   
    <input> 
    <input> 
    <input> 
    </div>