繁体   English   中英

将jQuery样式应用于动态创建的按钮

[英]Applying jquery style to dynamically created buttons

我是uI编程的新手。 我在我的应用程序中使用Jqgrid。 我有一列在每一行中显示按钮,使用formatter选项创建。 在格式化程序选项中描述的功能中,我绑定了按钮的click事件。 下面是代码

        { label: 'Depatment Name', name: 'deptName', width: 100,
              formatter:actionButtonFormatter
        },

      function actionButtonFormatter ( cellvalue, options, rowObject )
       {
          var element ='<div id="deptNmBtn"><button onClick=getDepartMentNm("' + rowObject.empName+'")> <span>Add</span></button></div>';
          $("button, input:submit, input:button", this).button();
          return element;
       }

我在这里面临两个问题。

1)jQuery主题未应用到使用formatter选项添加的Department Name列中的按钮。 我只想将此按钮与Jquery主题一起应用,所以我尝试了

         $("button, input:submit, input:button", this).button();
         $("button, input:submit, input:button", jqgrid_table_id).button();  
         $("button, input:submit, input:button", deptNmBtn).button(); //div id

但是它们都不起作用,并且该列中的按钮未应用Jquery主题。

2)在onclick中,我传递了employeeName的参数,该参数是该行的值。 如果员工姓名不包含任何空格,则此方法效果很好。 如果员工姓名中包含空格,则会抛出我

        SyntaxError: unterminated string literal

取自萤火虫。 有没有人面对这些问题。 请帮帮我。 并且还请帮助保持两者之间的差异

        var element = '<div> ....'

        var element = $('<div> ....')

我知道第二个是jquery语法,但是确切的区别是什么。 非常感谢。

添加这些类

ui-button ui-widget ui-state-default ui-corner-all

在悬停时添加ui-state-highlight

不确定我是否可以涵盖这里的所有基础...

1)我不记得添加样式的jQuery UI方法。 但是我从不这样做。 找出哪些类需要成为元素的一部分,并在创建按钮期间添加它们。 因此,与其制作一个按钮然后在其上调用.button(),不如将其"<button class="someclass otherclass">Button</button>""<button class="someclass otherclass">Button</button>" ,在"<button class="someclass otherclass">Button</button>"中填充了jQuery主题所需的类。 。

2)无论如何,您可能不应该使用onclick内联,但这是另一个讨论。 同时,这很简单:第一个是字符串,最终可能会被某些JavaScript方法(在jQuery中,如.append() )使用,以将新节点附加到DOM。 第二个创建节点对象,但仍然需要使用.append()类的东西将其附加到DOM。 ;-)引擎盖下有一个区别。 但是对于大多数目的来说,这并没有太大关系。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM