2016-04-26 34 views
1

我有一個搜索模式,有兩個按鈕,我想按下輸入時觸發。有最初的「搜索」按鈕,然後是最後的「提交」按鈕。有兩個提交按鈕觸發「角度」的角模態

用戶處於Angular Modal中,在搜索字段中輸入名稱(在此期間,Submit按鈕被禁用),然後按下「Enter」鍵開始搜索。搜索會填充一個表格,然後用戶點擊一個名稱進行選擇,然後啓用Submit按鈕,現在我需要一個「Enter」按鍵來提交選擇。

我可以得到第一個「Enter」來運行搜索功能,但我無法獲得第二次按下「Enter」來啓動提交選擇。

這裏是我的代碼:

<button type="submit" class="btn btn-default" ng-click="getNames(params)" value="Search">Search</button> 
<button class="btn btn-default" type="button" ng-click="Clear(params)">Clear</button> 

,然後一旦名稱的列表填充,用戶選擇一個,然後應該能夠按「Enter」再次觸發提交按鈕。

<div class="modal-footer"> 
    <input class="btn btn-default" type="submit" ng-click="OK()" ng-disabled="disableOK()"/> 
    <button class="btn btn-default" type="button" ng-click="Cancel()">Cancel</button> 
</div> 

使用<button type="submit" class="btn btn-default "ng-click="OK()" g-disabled="disableOK()"></button>這裏也不起作用。

我到處尋找,因爲這似乎是一個常見的問題,但我沒有看到這個問題的解決方案,主要是人們有多個按鈕想要做不同的事情提交,而不是觸發與「回車鍵。

可以在啓用時將其分配爲默認值嗎?

+0

確保您的按鈕是表單的一部分。然後使用onsubmit事件。輸入將在這種情況下工作。 – dfsq

回答

0

我有一個很難下你正在嘗試做的。但是,如果我試圖完成窗體上的按鍵做不同的事情,我會做我的控制器中的以下內容:

var keypressed = false; 

$scope.keyPressedFunction = function() {  
    if (keypressed) { 
     // do second thing 
    } else { 
     // do first thing 
     keypressed = true 
    } 
} 

這是否回答你的問題?