2011-11-01 75 views
4

所以我有一个joomla!该页面部分由基于用户的功能生成。因此,我需要使用“屏蔽输入插件”的表单部分通过页面加载时的函数加载。我遇到的问题是,在页面上的标准HTML字段上,插件工作正常,但在由我的php函数生成的字段中,字段锁定并且不允许任何输入。我的猜测是,这是一个问题,在jquery插件被解雇后,php函数拉入表单中,但我尝试将.mask调用放在$(document).ready中,并且没有运气。jquery蒙面输入加载内容

这里有一个片段......

jQuery(function($){ 
    $("#subNumber").mask("(999) 999-9999"); 
$(".numFix").mask("(999) 999-9999"); 
}); 

这个工程 - >

<form name = "subAct" id = "subAct" method="post"> 
<div class="col1"><input class="subaccountname" name="subName" type="text" id="subName"/></div> 
<div class="col2"><input class="subaccountnumber" name="subNumber" type="text" id = "subNumber"/></div> 
<div class="col3"><a href="javascript:submit()" class="buttonaddsub" id ="addSubBut">Add a New Account</a></div> 
</form> 

这一个不 - > 这个功能 - >

<?php dashboardFunction::displaySubAccount($uid) ?> 

以此形式加载 - >

<form name = "add_reg_num_<?php echo $pin ?>" id = "add_reg_num_<?php echo $pin ?>" method="post"> 
<div class="regisnumberadd"><input name="regNum" type="text" class = "numFix" /> 
<input name="regNumPin" type="hidden" value = "<?php echo $pin ?>"/> 
</div> 
<div class="clear"></div> 
<div class="addregisnum"><a href="javascript:;" onClick="subRegNum(<?php echo $pin ?>)">Add Number</a></div> 
</form> 

回答

5

您只需使用jQuery.on方法附加事件绑定,并且任何动态创建的项目都将连线到该事件。

我在这里回答类似的问题https://stackoverflow.com/a/10203361/12442

+0

工作就像一个魅力 – ladieu

+0

太好了,谢谢你让我知道。我已经使用了很多 –

0

我认为,因为内容动态加载需要使用。 live

我不知道如何使用.live与.mask。

还有一个选择。您可以将.mask代码放入动态加载的回调函数中。

$("#dynamicContent").load("loadFromMe.php",function(){ 
    $("#subNumber").mask("(999) 999-9999"); 
    $(".numFix").mask("(999) 999-9999"); 
}); 
0

动态jQuery的输入掩码解决方案(swicth编程屏蔽)

$(document).ready(function() { 
     $("[data-mask]").inputmask(); 
     // Do something exciting   
     var prm = Sys.WebForms.PageRequestManager.getInstance(); 

     prm.add_endRequest(function() { 
      // re-bind your jQuery events here 
      $("[data-mask]").inputmask();     
     }); 

    }); 


      if (is_loose == "True") {      
       $("#it_qty").removeAttr("data-inputmask","'mask': '9{0,20}'"); 
       $("#it_qty").attr("data-inputmask", "'mask': '9{0,20}.9{0,2}'"); 

       $("[data-mask]").inputmask(); 

      } else { 

       $("#it_qty").removeAttr("data-inputmask", "'mask': '9{0,20}.9{0,2}'"); 
       $("#it_qty").attr("data-inputmask", "'mask': '9{0,20}'"); 
       $("[data-mask]").inputmask(); 
      }