繁体   English   中英

如何使用jquery将动态变量附加到div?

[英]How can I append dynamic variables to div with jquery?

我在使它起作用时遇到了一些困难。 我想做的是从onclick中获取动态变量,并将其放入我要附加到文档中另一个div的div中。 由于每个项目都会有一个与数据库查询关联的变量,因此我认为从数据库中填充buildTicket()变量会更容易。

我知道我做错了。 我只是不知道是什么。

如果您有更好的方法,我会全力以赴。

这是我的JavaScript:

<script type="text/javascript">
$(document).ready(function(){
$(function() {
buildTicket = function(eventname,ticketprice,venueid,userid) {
    $(".ticketbtn").click(function(){
      $(".ticketwindow").append("<div class='ticket'>" + eventname + " - " +     eventprice + "</div>");
    });
}
});
</script>

这是我的HTML:

<div class="ticketbtn" onclick="buildTicket('Some Show','12.00','1','2');">
        <img src="assets/images/tixicon.png" alt=""> <div class="eventname">Some Show</div>
        <div class="ticketprice">Adult - 12.00    </div>
    </div>

<div id="ticketwindow">

</div>

有人可以帮我解决这个问题吗?

(很抱歉,代码格式。仍然试图弄清楚如何正确使用stackoverflow的形式。)

谢谢乔

您将在单击按钮时绑定onClick侦听器。

如果您必须使用onClick元素属性,那么尽管您应该熟悉Unobtrusive JavaScript的原理,但是下面的代码将起作用。

$(document).ready(function(){
    var buildTicket = function(eventname,ticketprice,venueid,userid) {
        $("#ticketwindow").append("<div class='ticket'>" + eventname + " - " + eventprice + "</div>");
    });
});

首先, $(function() {等效于$(document).ready(function() {因此,您只需要其中一个。

其次,如果要通过jQuery绑定到click() ,则不需要使用onclick属性,反之亦然。

如果仅使用onclick属性,则可以一起删除文档就绪处理程序和click()绑定,只需定义buildTicket()函数即可。

第三, eventprice变量在buildTicket()buildTicket()命名。

这是一个有效的小提琴,使用jQuery绑定到按钮div的click事件。 http://jsfiddle.net/BdJAL/

我引用您的问题:“我认为从数据库中填充buildTicket()变量会更容易。”

如果要在JavaScript中保留数据库数据,如何发出HTTP请求来获取它。 显然,您可以使用XMLHttpRequest以常规XJAX方式执行此操作: http : //www.w3schools.com/xml/xml_http.asp或者您可以调用一些服务器端代码来为您生成JSON并在<script中引用它>标记,例如<script type =“ text / javascript” src =“ ../ js / jsonFromServerSideCode.jsp”> </ script>

暂无
暂无

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

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