带参数的 jquery 函数调用

标签 jquery javascript

我有一个带有一堆按钮的 table ,如下所示:

<tr class="hr-table-cell" >
    <td>REcord 1</td>
    <td>
        <INPUT type="button" value="Approve"  onclick="" />
        <INPUT type="button" value="Reject"  onclick="" />
        <INPUT type="button" value="Delete"  onclick="fnDeletePpAppl(222445,704);" />
    </td>
  </tr>

  <tr class="hr-table-cell" >
    <td>REcord 1</td>
    <td align="center" class="hr-table-bottom-blue-border" valign="middle">
        <INPUT type="button" value="Approve"  onclick="" />
        <INPUT type="button" value="Reject"  onclick="" />
        <INPUT type="button" value="Delete"  onclick="fnDeletePpAppl(237760,776);" />
    </td>
  </tr>

我的 jquery 像这样:

  <script type="text/javascript"> // JQUERY stuff
    $(document).ready(function(){

  function fnDeletePpAppl(empno, applno) {
    alert('Entering here');
    $("form").get(0).empno.value = empno;
    $("form").get(0).applNo.value = applno;
    $("form").get(0).listPageAction.value = "delete"; 
    $("form").get(0).action.value = "pprelreqlist.do";
    $("form").get(0).submit();

  }

});

这似乎不起作用。我认为这意味着,只有在 dom 准备好之后,该函数才准备好。 dom 准备好后,我单击按钮,为什么无法识别 .ready() 函数中的函数声明?但是,如果我直接使用该函数:

  <script type="text/javascript">

  function fnDeletePpAppl(empno, applno) {
    alert('Entering here');
    $("form").get(0).empno.value = empno;
    $("form").get(0).applNo.value = applno;
    $("form").get(0).listPageAction.value = "delete"; 
    $("form").get(0).action.value = "pprelreqlist.do";
    $("form").get(0).submit();

  }

这有效。我想在这里直接了解我的基础知识...如果我在没有 .ready() 的情况下进行声明,这是否意味着我正在使用普通的 jscript?

如果我用 document.ready 来做到这一点 - 通常的 jquery 声明方式,我需要更改什么才能使其工作?

我知道有更好的方法可以做到这一点,例如与按钮绑定(bind)等,但我想知道为什么这种特殊的方法似乎不起作用。谢谢。

干杯。 K

最佳答案

通过在 ready 之外声明函数,您可以在全局范围内声明它,因此可以通过 DOM 声明访问它。

否则,如果您在 ready 内声明它,则您将声明一个在 ready 范围内“私有(private)”的函数 - 该函数之外的任何内容都无法看到该函数声明。

关于带参数的 jquery 函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2897934/

相关文章:

javascript - 如何在js函数中获取元素id?

javascript - 将数据解析为整数 JSON 数组时出现问题

javascript - 当对象不再被引用时clearInterval?

javascript - 如何使用 underscore.js 或 jquery 删除模式

javascript - 从 Greasemonkey 或 Tampermonkey 脚本运行 onchange 函数?

javascript - 从标签内容解析 JSON 时出错

javascript - 无法在 JS 中添加 PHP

reload() 之前的 Javascript 警报提示

javascript - 使用函数设置变量值的单行代码,如果为假则抛出异常

javascript - jQuery $.when 和 $.then 意想不到的结果