[英]How to call controller function from html?
嗨,我對AngularJs和HTML,Javascript和CSS還是陌生的,所以請嘗試為假人解釋答案。
因此,由於某種原因,不會調用函數“ updateFilterTerm”。 變量“ filterTerm”始終保持與初始化相同。
就像您在代碼中看到的那樣,正在調用該函數的頁面是另一個頁面,類似於在變量“ filterTerm”的幫助下顯示內容的頁面,但是它們具有相同的控制器“ BatchMonitorCtrl”。
我做錯了什么嗎?或者您可以指導我解決該問題?
這是我的Controller.js的一部分:
...
function BatchMonitorCtrl($scope, Batchmonitor, BatchmonitorConfig, ConfigService, $localStorage, $timeout, flash, $routeParams) {
$scope.filterTerm = '2312ab78-1e3c-48c5-82af-e38b42d704eb';
$scope.updateFilterTerm = function(filterTerm) {
$scope.filterTerm = filterTerm;
};
}
...
這是我的bm.html的一部分:
...
<span ng-switch-default
class="label label-primary {{types[charge.Type].CSS}}"
style="cursor:pointer;padding:8px;"
onclick="$(this).popover('toggle')"
data-html='true'
data-toggle="popover"
data-trigger="manual"
data-placement="top"
title="{{"common.BatchStatus-OK"|i18n}}"
data-content="Type: {{charge.Type}}<br />LogicalId: {{charge.LogicalId}}<br />Nest: {{charge.Nests}}<br />SetupDate: {{ charge.SetupDateObject | date:'yyyy-MM-dd HH:mm:ss' }}<br/>Updated: {{ charge.Updated['$date'] | date: 'yyyy-MM-dd HH:mm:ss' }}
<br/><br/><a href='#/delete-charge' class='btn btn-primary btn-block' ng-click='updateFilterTerm({{charge._id}})'><span>{{"common.Delete-Charge"|i18n}}</span></a>">
<h5><strong>{{charge.LogicalId}}</strong></h5>
</span>
...
這是我的dc.html的一部分,在這里我使用“ filterTerm”過濾批次:
...
<tr ng-repeat="batch in allBatches | orderBy: 'Sort' | filter: filterTerm">
...
我不確定,但是我認為它與范圍繼承有關。 嘗試使用controllerAs語法或其他點訪問技術:
| filter : obj.filterTerm;
function setFilter(term){
$scope.obj.filterTerm = term;
}
我想我對自己的問題有一個答案。
因為我在兩個局部(頁面)上都具有相同的控制器,所以它們都有自己的該控制器實例。 因此,即使該函數被調用,下一頁也不會包含上一頁的信息。 因此,我需要找到另一個解決方案。
在您的HTML視圖中,請使用此
<script type="text/javascript">
function functiontocallcontrollermethod()
{
$.ajax({
type: 'POST',
url: '/Poll/Mymethod',
data: { voteid: $("#voteDemocrat").val() }
});
</script>
在您的控制器中
[HttpPost]
[WebMethod]
public void Mymethod(int voteid)
{
/// WORK HERE
}
最后,WebMethod命名空間是
使用System.Web.Services;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.