【问题标题】:Jquery Masked input \not working on dynamically added inputsJquery屏蔽输入\不处理动态添加的输入
【发布时间】:2014-03-31 20:37:34
【问题描述】:

我正在为一个项目创建注册表单,但遇到了问题。我的表单所做的是使用户能够单击“添加联系人”按钮并动态地在页面上显示更多输入框,以便用户可以输入其他用户。除了 jquery masked 之外,一切都在工作。 jquery 适用于页面上的任何默认文本输入,但不适用于任何 javascript 生成的输入。

希望有人明白我在解释什么 我使用下面的掩码输入 http://digitalbush.com/projects/masked-input-plugin/

下面是我的javascript和html

   <script language="javascript">
     fields = 0;
     function addInput() {
       if (fields != 5) {
        document.getElementById('text').innerHTML += "<div class='row-fluid'><div class='span5 clearfix'><h4 class='heading_b'>Company Address</h4><input type='text' name='company_address[]' class='span11'></div></div><div class='row-fluid'><div class='span5 clearfix' style='width:300px'><h4 class='heading_b'>Company City</h4><input type='text' name='company_city[]' class='span5'></div><div class='span4 clearfix' style='width:300px'><h4 class='heading_b'>Company State</h4><select name='company_state[]' class='span4'><option value='AL'>AL</option><option value='AK'>AK</option><option value='AZ'>AZ</option><option value='AR'>AR</option><option value='CA'>CA</option><option value='CO'>CO</option><option value='CT'>CT</option><option value='DE'>DE</option><option value='DC'>DC</option><option value='FL'>FL</option><option value='GA'>GA</option><option value='HI'>HI</option><option value='ID'>ID</option><option value='IL'>IL</option><option value='IN'>IN</option><option value='IA'>IA</option><option value='KS'>KS</option><option value='KY'>KY</option><option value='LA'>LA</option><option value='ME'>ME</option><option value='MD'>MD</option><option value='MA'>MA</option><option value='MI'>MI</option><option value='MN'>MN</option><option value='MS'>MS</option><option value='MO'>MO</option><option value='MT'>MT</option><option value='NE'>NE</option><option value='NV'>NV</option><option value='NH'>NH</option><option value='NJ'>NJ</option><option value='NM'>NM</option><option value='NY'>NY</option><option value='NC'>NC</option><option value='ND'>ND</option><option value='OH'>OH</option><option value='OK'>OK</option><option value='OR'>OR</option><option value='PA'>PA</option><option value='RI'>RI</option><option value='SC'>SC</option><option value='SD'>SD</option><option value='TN'>TN</option><option value='TX'>TX</option><option value='UT'>UT</option><option value='VT'>VT</option><option value='VA'>VA</option><option value='WA'>WA</option><option value='WV'>WV</option><option value='WI'>WI</option><option value='WY'>WY</option></select></div><div class='span3 clearfix'><h4 class='heading_b'>Company Zip</h4><input type='text' name='company_zip[]' class='span3' maxlength='5'></div></div><div class='row-fluid'><div class='span5 clearfix' style='width:300px'><h4 class='heading_b'>Landload/Mortgage Company</h4><input type='text' name='company_landlordcompany[]' class='span8'></div><div class='span5 clearfix' style='width:250px'><h4 class='heading_b'>Rent/Mortgage Amt</h4><input type='text' name='companyrentamt[]' class='span4'></div><div class='span5 clearfix' style='width:300px'><h4 class='heading_b'>Landlord Contact Name</h4><input type='text' name='business_landlordname[]' class='span8'></div><div class='span5 clearfix' style='width:290px'><h4 class='heading_b'>Landlord Contact Phone</h4><input type='text' name='business_landlordphone[]' class='span6 mask_phone'></div></div>";
        fields += 1;
        } else {
        document.getElementById('text').innerHTML += "<br />Only 5 addresses are allowed.";
        document.form.add.disabled=true;
        }
        }

以上是我的html页面的头部 然后在我的身体里我有

<div id='text'>  </div>

如果我采用上述 javascript 中列出的任何具有屏蔽输入的输入并将其添加到页面正文中,则屏蔽输入将起作用。 我希望有人可以提出建议。

我尝试将包含屏蔽输入代码的 js 文件放在页面底部,也尝试将它放在页面顶部,但没有成功。 谢谢

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    您必须在脚本中的某处为类似于以下内容的输入初始化屏蔽插件:$("#phone").mask("(999) 999-9999"); 当您在 addInput() 中动态添加元素时,它们不会被初始化。你可以这样做。但是,我认为从一开始就将所有内容添加到正文中会更容易,并隐藏“动态”元素。这样你就可以初始化它们。当用户单击“添加联系人”时,您可以像fiddle 中那样一个接一个地显示他们。

    编辑:更新链接

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多