【问题标题】:SearchBar on submit提交时的搜索栏
【发布时间】:2016-05-17 09:06:50
【问题描述】:

我正在尝试获取搜索栏的事件,但没有答案... 有必要再做点什么吗?

ts:

import {CompaniesViewModel} from "../../shared/models/companyModel";
import {Page} from "ui/page";
import {SearchBar} from "ui/search-bar";

export function pageLoaded(args) {
    console.log('pageLoaded');
    var page = <Page>args.object;
    page.bindingContext = new CompaniesViewModel();

    var searchBar = new SearchBar();
    searchBar.on(SearchBar.submitEvent, function (args) { 
        console.log("Search for " + (<SearchBar>args.object).text);
    });
    searchBar.on(SearchBar.clearEvent, function (args) {
        console.log("Clear");
    });
}

xms:

<SearchBar row="1" text="{{ search }}" hint="NIF ou Nome da empresa" id="search" />

【问题讨论】:

    标签: javascript mobile typescript nativescript


    【解决方案1】:

    这是因为searchBar 变量是用新的SearchBar 初始化的,与您在XML 中定义的搜索栏无关。所以你的TS应该改成:

    import {CompaniesViewModel} from "../../shared/models/companyModel";
    import {Page} from "ui/page";
    import {SearchBar} from "ui/search-bar";
    
    export function pageLoaded(args) {
        console.log('pageLoaded');
        var page = <Page>args.object;
        page.bindingContext = new CompaniesViewModel();
    
        var searchBar = page.getViewById<SearchBar>("search");
        searchBar.on(SearchBar.submitEvent, function (args) { 
            console.log("Search for " + (<SearchBar>args.object).text);
        });
        searchBar.on(SearchBar.clearEvent, function (args) {
            console.log("Clear");
        });
    }
    

    【讨论】:

    • 谢谢! :D 我开始理解逻辑了:P
    猜你喜欢
    • 1970-01-01
    • 2017-03-08
    • 2011-01-15
    • 2010-11-26
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    相关资源
    最近更新 更多