动态按钮不调用javascript函数?

时间:2012-08-02 20:54:16

标签: javascript jquery html

我有一个按钮,我可以像这样动态添加到我的页面。

if (adminInd  =='X'){

    var adminDiv = $(
        '<label id=Delegatelbl>Miscellaneous label prototyping.:</label>'+
        '</br></br>'+
         '<div style="padding-right:152px;"> '+
            '<form action="userfop.jsp" id="userForm" >'+
              '<label for="tuid">TU-ID:</label>'+
              '<input type="text" name="tuid" id="tuid" maxlength="9"/>'+
            '<button type="button" id="RoleChanger" style="cursor:pointer" class="ab_submit" onclick="validateTuid()"> Change Role </button>'+
            '</form>'+
         '</div>');

    adminDiv.insertBefore('#FormDiv');


    } 

你可以从按钮标签看到我试图调用一个javascript函数和 我只是尝试了一切,功能不会触发。我做错了什么我一直在努力拍摄2小时,但没有成功。 这是我看不出我做错了什么的功能。有人请指出我正确的方向。

function validateTuid(){

    var textTuid = document.getElementById(tuid).value  

    $.ajax({  type: "POST",
          url: "dbfunctions.jsp",  
          data: {TYPE:"V", tuidval:textTuid }}).done(function( msg )
           {  
                alert("Data Saved: " + $.trim(msg));
            if (msg != null || msg != ''){userForm.submit()}
                return "N";
          });

2 个答案:

答案 0 :(得分:5)

您应该委派click事件,您可以使用on()方法,尝试以下方法:

$(document).on('click', "#RoleChanger", validateTuid)

答案 1 :(得分:0)

也许看看http://api.jquery.com/live/。此外,而不是在按钮上硬编码onClick,而是将侦听器绑定到它。