2016-04-10 2 views
0

У меня есть HTML-форма, которая имеет один вход. Этот вход я хотел бы быть URL-адресом, из которого метод D3.json будет использовать его для построения иллюстрации.данные формы прохода как url ​​к методу d3.json

Мне интересно, как я могу передать этот вход? Я полагаю, что действие формы может помочь, но я не знаю, как передавать переменные, используя это.

ответ

2

Вы можете просто прочитать value свойство ввода и передать в d3.json ...

var myUrl = d3.select('#myTextBox').property('value'); 
d3.json(myUrl, function(error, json) { 
    // do awesome stuff... 
}); 

редактирует

d3.select('#myButton').on('click', function(){ 
 
    var myUrl = d3.select('#myInput').property('value'); 
 
    d3.json(myUrl, function(error, json) { 
 
     if (error) throw(error); 
 
    }); 
 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script> 
 
<input type="text" id="myInput" /> 
 
<button id="myButton">My Awesome Action!</button>

+0

нормально, но как я сделать это действие, которое нужно выполнить для отправки? – kaboom

+0

@kaboom, что ты здесь заканчиваешь? «Отправить» - для отправки данных формы обратно на сервер, и, честно говоря, в этом тяжелом мире JavaScript я не думаю, что их больше используют. Если у вас есть текстовое поле, а затем вы хотите, чтобы кнопка выполняла какое-то действие, просто сделайте это, забудьте о форме. См. Правки выше ... – Mark

+0

Конечная цель - нарисовать график из того, что json возвращается из URL-адреса в поле ввода. – kaboom

Смежные вопросы