Jquery 关于JSP中的函数()

Jquery 关于JSP中的函数(),jquery,function,jsp,kendo-ui,kendo-grid,Jquery,Function,Jsp,Kendo Ui,Kendo Grid,我遇到一个函数,它如下所示: <script id="tmpl-grid-action" type="text/x-kendo-template"> <button type='button' class='btn btn-success btn-xs' onclick='editForm("#=Id#")'><s:message code='global.btn.edit' /></button> <button type=

我遇到一个函数,它如下所示:

<script id="tmpl-grid-action" type="text/x-kendo-template">
    <button type='button' class='btn btn-success btn-xs' onclick='editForm("#=Id#")'><s:message code='global.btn.edit' /></button>
    <button type='button' class='btn btn-warning btn-xs' onclick='delConfirm("#=Id#")'><s:message code='global.btn.delete' /></button>
</script>

我也不确定-->delConfirm(#=Id#)是如何工作的

当我点击这个按钮时,这个按钮会触发函数,函数的参数会自动从相关字段获取ID,我不知道它从哪里获取,这是如何工作的

我使用剑道UI网格

提前谢谢~

这是一个好消息。从文件中:

<div id="example"></div>

<script id="javascriptTemplate" type="text/x-kendo-template">
    <ul>
    # for (var i = 0; i < data.length; i++) { #
        <li>#= myCustomFunction(data[i]) #</li>
    # } #
    </ul>
</script>

<script type="text/javascript">
    // use a custom function inside the template. Must be defined in the global JavaScript scope
    function myCustomFunction (str) {
        return str.replace(".", " ");
    }

    //Get the external template definition using a jQuery selector
    var template = kendo.template($("#javascriptTemplate").html());

    //Create some dummy data
    var data = ["Todd.Holland", "Steve.Anglin", "Burke.Ballmer"];

    var result = template(data); //Execute the template
    $("#example").html(result); //Append the result
</script>
剑道UI模板使用一种称为哈希的简单模板语法 模板。使用这种语法,#(散列)符号用于标记区域 在模板中,当模板被删除时,应将其替换为数据 执行。#字符也用于表示开始和结束 模板内自定义JavaScript代码的结尾

有三种方法可以使用哈希语法:

  • 将值呈现为HTML:#=#
  • 使用HTML编码显示值:#::#
  • 执行任意JavaScript代码:#如果(true){#…此处为非脚本内容…#}#
  • 还可以使用:

    模板通常包含表达式。一些模板 框架发明了自己的JavaScript重新实现来提供 表达式以性能为代价,但剑道UI模板 选择允许在模板内执行普通JavaScript, 再次强调性能优于昂贵的语法糖

    文档中的示例:

    <div id="example"></div>
    
    <script id="javascriptTemplate" type="text/x-kendo-template">
        <ul>
        # for (var i = 0; i < data.length; i++) { #
            <li>#= myCustomFunction(data[i]) #</li>
        # } #
        </ul>
    </script>
    
    <script type="text/javascript">
        // use a custom function inside the template. Must be defined in the global JavaScript scope
        function myCustomFunction (str) {
            return str.replace(".", " ");
        }
    
        //Get the external template definition using a jQuery selector
        var template = kendo.template($("#javascriptTemplate").html());
    
        //Create some dummy data
        var data = ["Todd.Holland", "Steve.Anglin", "Burke.Ballmer"];
    
        var result = template(data); //Execute the template
        $("#example").html(result); //Append the result
    </script>
    
    
    
      #对于(var i=0;i#=myCustomFunction(数据[i])# # } #
    //在模板内使用自定义函数。必须在全局JavaScript作用域中定义 函数myCustomFunction(str){ 返回str.replace(“.”,“”); } //使用jQuery选择器获取外部模板定义 var template=kendo.template($(“#javascriptTemplate”).html(); //创建一些虚拟数据 var数据=[“Todd.Holland”、“Steve.Anglin”、“Burke.Ballmer”]; var结果=模板(数据)//执行模板 $(“#示例”).html(结果)//附加结果
    因此,对于您的示例您应该有以下内容:

    <div id="div-where-you-want-to-insert"></div>
    
    <script id="tmpl-grid-action" type="text/x-kendo-template">
        <button type='button' class='btn btn-success btn-xs' onclick='editForm("#=Id#")'><s:message code='global.btn.edit' /></button>
        <button type='button' class='btn btn-warning btn-xs' onclick='delConfirm("#=Id#")'><s:message code='global.btn.delete' /></button>
    </script>
    
    <script type="text/javascript">
        var template = kendo.template($("#tmpl-grid-action").html());
    
        var data = {Id: "XXX"};
    
        var result = template(data);
    
        $("#div-where-you-want-to-insert").html(result);
    </script>
    
    
    var template=kendo.template($(“#tmpl网格操作”).html();
    var data={Id:“XXX”};
    var结果=模板(数据);
    $(“#要插入的div”).html(结果);