我正在尝试在文本框中选择选择框时获取日期。
我的选择框。
{{ Form::select('destination', array(), null, array('class' => 'large', 'id'=>'destination')) }}
我的文字框。
{{ Form::text('depart', null, array('class'=>'date', 'id'=>'date')) }}
。
我的javascript代码。
<script type="text/javascript">
$(document).ready(function($){
$('#destination').change(function(){
var origin = $(this).find(':selected').text();
$.get("{{ URL::route('getDate')}}",
{origin: origin},
function(data) {
var model = $('#date');
model.empty();
$.each(data, function(index, element) {
model.append("<input type = "text"value='"+ element +"'/>");
});
});
});
});
这是我的控制器代码
public function getDate()
{
if (Request::ajax())
{
$result = [];
$first = Input::get('origin');
$tables= Timetable::join('route', 'tbl_rte_id', '=', 'id')
->where('rte_origin', $first)
->orderBy('rte_destination', 'asc')
->get(array('id', 'tbl_start'));
foreach ($tables as $table) {
$result[$table->id] = $table->tbl_start;
}
return Response::json($result);
}
}
当我将我的javascript代码和文本框更改为selectbox时,如下所示。
{{ Form::select('ja', array(), null, array('class' => 'large', 'id'=>'ja')) }}
<script type="text/javascript">
$(document).ready(function($){
$('#destination').change(function(){
var origin = $(this).find(':selected').text();
$.get("{{ URL::route('getDate')}}",
{origin: origin},
function(data) {
var model = $('#ja');
model.empty();
$.each(data, function(index, element) {
model.append("<option value='"+ element +"'>" + element + "</option>");
});
});
});
});
问题出在以下一行
model.append("<input type = "text"value='"+ element +"'/>");
如何解决。
答案 0 :(得分:0)
您没有在以下位置转义引号:
model.append("<input type = "text"value='"+ element +"'/>");
使用:
model.append('<input type="text" value="' + element + '"/>');
...或
model.append("<input type=\"text\" value=\"" + element + "\"/>");
如果您使用带语法高亮的编辑器,这应该是显而易见的。