【问题标题】:call jquery function from javascript not working从javascript调用jquery函数不起作用
【发布时间】:2011-05-12 06:13:06
【问题描述】:

我阅读了关于此的类似帖子,但目前无法工作。我的略有不同。

我调用了一个 javascript 函数 addFormField,它在表单中创建了一个动态输入元素。这部分工作正常。在该函数中,我调用 JQuery 函数 loadData(id) 来测试动态创建的元素的 id 是否存在但不存在。是否正确调用 loadData 以等待 $ 以创建输入元素 ID,然后再检查它是否已创建?谢谢!

function addFormField() {
var id = document.getElementById("id").value;

$("#divTxt").append("<p id='row" + id + "'><label for='txt" + id + "'>Field " + id + "&nbsp;&nbsp;<input type='text' size='20' id='txt" + id + "'><p>");


$(function () {
    loadData(id);
});

id = (id - 1) + 2;
document.getElementById("id").value = id;
}

function loadData(id) {
if ( $('#txt' + id).length ){
        alert('success');
    }
    else {
        alert ('fail'); 
    }
}

<html>
<p><a href="#" onClick="addFormField(); return false;">Add</a></p>
<form method="get" id="form1" action='#'>
<input type="hidden" id="id" value="1">
<div id="divTxt"></div>
</html>

【问题讨论】:

    标签: javascript jquery jquery-selectors


    【解决方案1】:

    你的代码很适合我:http://jsfiddle.net/6t8eX/

    只需确保addFormField() 方法是全局。如果不是,则内联 onClick 将无法找到它。

    如果它被包裹在$(function () { }) 中(或任何其他函数体),它就不是全局的。

    【讨论】:

      猜你喜欢
      • 2014-08-17
      • 2021-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多