Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaScript函数中运行JQuery_Jquery - Fatal编程技术网

如何在JavaScript函数中运行JQuery

如何在JavaScript函数中运行JQuery,jquery,Jquery,我试图创建一个动态函数,但我遇到了麻烦,因为我似乎无法在JS函数中运行我的JQuery代码。我有一个有效的例子 我有第二个例子。两个JSFIDLE之间的唯一区别是,我将调用函数从以下位置切换: $('#btnAdd').click(function() { 对于此调用函数: function addBtn(){ delBtn上也一样。我之所以要这样做,是因为我可以传递一个参数,这样我就知道我是否要添加另一个问题字段或答案字段。jsFiddle默认情况下将JavaScript代码包装在闭包中(

我试图创建一个动态函数,但我遇到了麻烦,因为我似乎无法在JS函数中运行我的JQuery代码。我有一个有效的例子

我有第二个例子。两个JSFIDLE之间的唯一区别是,我将调用函数从以下位置切换:

$('#btnAdd').click(function() {
对于此调用函数:

function addBtn(){

delBtn上也一样。我之所以要这样做,是因为我可以传递一个参数,这样我就知道我是否要添加另一个问题字段或答案字段。

jsFiddle默认情况下将JavaScript代码包装在闭包中(即函数是私有变量)。您必须选择“不换行(正文)”:。

您提供的两个代码段在功能上是不同的

这实际上是注册单击事件:

$('#btnAdd').click(function)
在本例中,“function”只是一个回调函数,即在触发click事件时要调用的函数的名称。因此,要使用第二把JS小提琴,您必须执行以下操作:

$('#btnAdd').click(addBtn);

如果您能给我们提供更多关于您实际试图对代码执行的操作的信息,我们可能能够提供更详细的答案。

我将从标记中获取该代码。您可以使用:

$('#btnAdd').click(function() {
   addBtn();
});
现在,由于您有多个:将class='btnAdd'放在标记中,而不是放在onclick处理程序中,并使用:

$('.btnAdd').live('click',function() {
   addBtn();
});
新标记:

<input class="btnAdd" type="button" value="Add Question" />
1.7.1 jQuery用户注意事项;使用:

$(document).on('click','.btnAdd,#btnAdd',function() {
    addBtn();
});

o、 我没有意识到这是一个棘手的问题。我很沮丧,因为我没有看到任何问题。非常感谢你!如何在JavaScript函数中运行JQuery就像每个JavaScript代码一样。。。jQuery是Javascript之上的抽象,而不是某种魔法。`var newNum=newnumber(num+1);`应该是
var newNum=num+1啊,很抱歉,我没有注意到您在第二个JSFidle中在html中添加了onclick属性,pimvdb的答案是正确的
$(document).on('click','.btnAdd,#btnAdd',function() {
    addBtn();
});