2013-12-15 45 views
1

我試圖創建的這個預期的HTML輸出輸入元素:用jQuery創建onkeypress的輸入?

<input 
    type="text" 
    maxlength="13" 
    value="DD/MM/YY 00:00.0" 
    onkeypress="dateTime()" 
> 

我試着用下面的jQuery代碼做這個

var input = $("<input>", 
    { 
    name : newName, 
    maxlength : newSize, 
    size : newSize, 
    type : 'text', 
    value : newVal, 
    onkeypress : dateTime() 
    }); 

但我沒有得到預期的輸出

<input type="text" maxlength="13" value="DD/MM/YY 00:00.0"> 

問題1:這是什麼代碼的說明,因爲我不能爲我的生活找到了什麼關於這個東西的jQuery文檔(鏈接將不勝感激)。

問題2:什麼是正確的參數來獲得我預期的html結果?

+3

你期望什麼結果? – ComFreek

+0

*鏈接將不勝感激* - >怎麼樣'jquery.com'? –

+0

這些變量來自哪裏? –

回答

1

嘗試

onkeypress : "dateTime()" 

,而不是

onkeypress : dateTime() 

一個執行的功能。

var input = $("<input>", 
    { 
    name : newName, 
    maxlength : newSize, 
    size : newSize, 
    type : 'text', 
    value : newVal, 
    onkeypress : dateTime 
    }); 

input.on('keypress',dateTime); 

在回調, 「這」 表示事件目標(輸入)。

您可以通過使用$(this).val(); $(this).attr('myattribute'); $(this).data('myvar');

+0

謝謝,在jQuery中調用什麼所以我可以搜索文檔來知道接受的參數是什麼 – kaleeway

+1

jQuery方法被調用;-) http://api.jquery.com/jQuery/#jQuery-html-attributes 任何參數都是可以接受的。它們將被放置爲html屬性。 爲jQuery 1.4編輯的答案。請參閱文檔1.8 + –

+0

如果我不能使用(),如何以這種方式將參數傳遞給函數? 例如DATETIME( 「DD/MM/YYYY」)? – kaleeway

1

得到的輸入值建議你需要審查的jQuery的按鍵文檔:

http://api.jquery.com/keypress/

你需要看看如何使用文檔準備事件jquery以及選擇器引擎如何工作。你的代碼應該看起來有點像這樣:

$(function() { 
    $("input").keypress(function() { 
     //do stuff 
    }) 
}) 
+0

將值返回到dateTime()中。一個html屬性? – kaleeway

相關問題