0

我有一个javascript函数。我正在进行 AJAX 调用,在收到的内容中有一个链接,我想用它来调用 javascript 函数。

MyJavascriptFunction(bla){
   alert (bla);
}

Result from ajax = "<a href="#" onclick="MyJavascriptFunction(bla)">Click</a>

我是否必须对 AJAX 的结果进行任何特殊处理才能使其正常工作,或者它是否应该正常工作。

我已经尝试过这样但单击链接没有成功。

AJAX 调用:

function doSearch() {

  var form = $('form');

   $.ajax({
     url: "doSearch.php", 
     type: "GET",
     data: form.serialize(), 
     success: function(result){ 
       document.getElementById("result").innerHTML=result;
       }
    });
}

在我打印出来的php中

<a href="#" onclick="MyJavascriptFunction(bla)">Click</a>
4

3 回答 3

0

<a>将您的标签更改为:

<a href="#" onclick="MyJavascriptFunction(bla); return false;">Click</a>
于 2012-10-23T08:20:55.003 回答
0

您正在混合 jQuery 和 DOM。那不漂亮

试试这个 - 假设您在 html 中没有多个链接

success: function(result){ 
  $("#result").html(result).find("a").on("click",function() {
    MyJavascriptFunction(bla); 
    return false;
  };
}
于 2012-10-23T08:21:48.563 回答
0

首先,尝试一下。但是是的,您必须对 AJAX 结果做一些事情。它必须放在 DOM 中的某个位置,否则用户将无法单击它。

另外,请确保 javascript 函数是顶级的。不过,我建议您改用事件处理程序。

于 2012-10-23T08:05:34.073 回答