1

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

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";
          });
4

2 回答 2

5

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

$(document).on('click', "#RoleChanger", validateTuid)
于 2012-08-02T20:57:43.843 回答
0

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

于 2012-08-02T20:58:39.167 回答