Kendo Ui - Perché il pulsante Fai clic su Aggiorna la pagina?
-
26-12-2019 - |
Domanda
Si prega di trovare sotto il mio codice:
Modello del modulo di ricerca del cliente
<script type="text/x-kendoui-template" id="customer-search-view-template">
<div class="searchform" id="searchCustomer">
<form class="frmSearch">
<input name="searchTxt" data-bind="value: customerName" class="k-textbox" />
<button class="k-button" data-bind="click: searchClicked">Search</button>
<button class="k-button" data-bind="click: newClicked">New</button>
</form>
</div>
</script>
.
Customer-search.js dove caricamento del modello sopra e creazione dell'oggetto ViewModel
$(function(){
var views = {};
templateLoader.loadExtTemplate("customer-search-view-template", "../views/customer-search-template.html");
var layout = new kendo.Layout($('#customer-search-view-template').html());
layout.render($("#main"));
// Create an observable view model object.
var customer = kendo.observable({
customerName: "John",
searchClicked: function() {
this.set("customerName", "Search clicked");
},
newClicked: function() {
this.set("customerName", "New clicked");
}
});
// Bind the view model to the personFields element.
kendo.bind($('#searchCustomer'), customer);
});
.
Quando faccio clic sul pulsante di ricerca, il testo è impostato nella casella di testo, ma questo aggiorna anche la pagina con ?searchTxt=Search+clicked
nella barra degli indirizzi.
Posso sapere perché questo pulsante Fare clic su Aggiorna la pagina e come smettere di aggiornare la pagina sul pulsante Fare clic su ???
Soluzione
Proverei e posizionerei l'attributo 'tipo' per ciascuno simile:
<button type="button" class="k-button" data-bind="click: searchClicked">Search</button>
<button type="button" class="k-button" data-bind="click: newClicked">New</button>
.
La pagina pensa che ciascuno sta eseguendo un modulo inviare un'azione, ma posizionando l'attributo del tipo, è possibile accedere all'evento che hai intenzione di cercare.Potresti aver bisogno del tuo modulo tag se non hai intenzione di pubblicare dati, ma piuttosto un JS Event Handler.Buona fortuna.