2012-08-08 43 views
0

我有一個JavaScript彈出功能......HTML中的JavaScript功能

popUp(title, body){ 
    $('body').append('<div id="popupWindow"><div class="close"></div> 
     <h2 class="title">'+title+'</h2> 
     <div class="body">'+body+'</div> 
     </div>"); 
    // then on $('.close').click(func(){ remove() etc... }); 
    // and keyCode == 13 remove(); 
} 

是插入兩個參數到彈出窗口,然後插入到文檔的HTML。我有一個<form>作爲body的想法,但它cra出來??

我已經嘗試了各種各樣的東西,它似乎是HTML作爲引起問題的參數。我有限的JavaScript/jQuery經驗,所以任何幫助你們/加爾可以給予非常感謝。

感謝, 硅

這不是一個完整的副本 - 但是你的右邊,有一個流浪報價我說好的形式感謝球員逃脫(小時以及花費一個錯字...)

+3

可能是一個拼寫錯誤,但是您的html字符串的結尾是使用th e錯誤的報價類型。 – 2012-08-08 14:05:51

+2

而且你不能在JS字符串中有新行 – Quentin 2012-08-08 14:06:19

+0

任何你不能使用[jQuery UI對話框](http://jqueryui.com/demos/dialog/)插件的理由? – Oded 2012-08-08 14:06:47

回答

1

爲表單設置一個標識符並在JavaScript代碼中使用它。

<form id="myform"></form> 


popUp(title, body){ 
    $('#myform').append('<div id="popupWindow"><div class="close"></div> 
     <h2 class="title">'+title+'</h2> 
     <div class="body">'+body+'</div> 
     </div>'); 
    // then on $('.close').click(func(){ remove() etc... }); 
    // and keyCode == 13 remove(); 
} 

順便說一句,有一個與你的附加聲明的報價錯誤。

1

是彈出式功能嗎?你也有一些換行問題。就個人而言,我會用jQuery來構建你的元素......它更優雅。

function popUp(title, body){ 

    var $popup = $('<div />').attr('id', 'popupWindow'); 
    var $close = $('<div />').addClass('close'); 
    var $title = $('<h2 />').addClass('title').text(title); 
    var $body = $('<div />').addClass('body').html(body); 

    $popup.append($close).append($title).append($body); 
    $('body').append($popup); 
    // To append to a form, you can target it here instead of 'body' 

} 

popUp('My Title', 'Some <strong>body</strong> content'); 
0

我認爲在附加的方法,使用ASCII使用單和雙引號的問題,像代碼:

+ String.fromCharCode(34) + title + String.fromCharCode(34) + 

使用String.fromCharCode(34)用於字符串.fromCharCode(39)用於'