Вот мой HTML код:Как вызвать функцию javascript с помощью Lift после нажатия кнопки?
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string','Year');
data.addColumn('number','D1');
data.addColumn('number','D2');
data.addRows(2);
data.setValue(0,0,'1900');
data.setValue(1,0,'1910');
data.setValue(0,1,1);
data.setValue(1,1,2);
data.setValue(0,2,3);
data.setValue(1,2,1);
var options = {title: 'Tree Chart',
hAxis: {title: 'Time', titleTextStyle: {color: 'red'}},
pointSize: 5};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
function showChart(){
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
}
</script>
<form class="form-inline lift:form.ajax">
<div class="lift:DChart.render">
<button id="getChart" value="Get Chart" class="btn btn-inverse">Get Chart</button>
</div>
</form>
<div id="chart_div"></div>
функция showChart()
отображает график в chart_div
Вот мой Lift код:
object DChart {
def render = {
def process():JsCmd = Run("showChart();")
"#getChart" #> SHtml.button("Get Chart", process)
}
}
При нажатии на кнопку должна выполнять функцию showChart()
.. к сожалению он не работает.
Пожалуйста, помогите мне понять, как t o запустите функцию скрипта из лифта!
Что делать, если вы замените 'showChart()' 'с предупреждения (1)'? Что это показывает в этом случае? – VasyaNovikov
@ Vasya: даже с помощью метода alert() ничего не отображается. –
@jcern: thx для ваших друзей, однако он еще не работает (все 3 примера) .. Да, вы правы, я делаю что-то более сложное, но я застрял в этой проблеме, и я не получаю как решить ошибку. Я довольно новичок в разработке интерфейса (3 недели), так что это может показаться глупой проблемой для большинства из вас. Выбор Liftweb навязывается проектом, поэтому я должен разработать решение. В любом случае это странно, когда я вызываю showChart() в HTML «raw», диаграмма красиво рассылается, поэтому метод действительно работает, но когда я пытаюсь запустить скрипт из-под ниша, ничего не работает. –