传递多个参数时的ReferenceError Ajax Codeigniter

时间:2017-07-06 11:30:02

标签: php ajax codeigniter

我正在

  

ReferenceError:未定义Y1ohe1oTVVG6916

查看我的控制台时的

响应。尝试通过Ajax传递两个参数时会发生这种情况。 Y1ohe1oTVVG6916是此输入的唯一标识符。

AJAX:

function checktickets(val)
{
var myserial = <?= $row['eventserial']?>; //this outputs the unique identifier Y1ohe1oTVVG6916 
$.ajax({
type: "POST",
url: "<?php echo base_url();?>welcome/gettickets",
data:{
id:val,
evtsr:myserial
},
beforeSend :function(){
$(".numberoftickets option:gt(0)").remove();
$('.numberoftickets').find("option:eq(0)").html("Please wait..");

},
success: function (data) {
/*get response as json */
$('.numberoftickets').find("option:eq(0)").html("Select Number of Tickets");
var obj=jQuery.parseJSON(data);
$(obj).each(function()
{
console.log(data);
alert(data);
var option = $('<option />');
option.attr('value', this.value).text(this.label);
$('.numberoftickets').append(option);
});

/*ends */

}
});
}

控制器:

public function gettickets() {
$evt =$_POST['evtsr'];
$tkt =$_POST['id'];

$query = $this->db->query("SELECT * FROM events_tickets where event_serial ='$evt' AND tickets_id='$tkt'");

$data=array();
foreach($query->result_array() as $key=> $r)
{
for($i=1; $i<=$r['ticket_max_allowed_buyer']; $i++)
{
$data['value']=$i;
$data['label']=$i;
$json[]=$data;
}
}
echo json_encode($json);
}

如果我从ajax函数中删除第二个参数evtsr:myserial并从控制器重新调整我的查询,一切正常,但我需要包含第二个参数,以便对选择进行更多排序。

1 个答案:

答案 0 :(得分:0)

我猜只有一种可能的解释。 尝试使用这样的声明:

var myserial = '<?= $row['eventserial']?>';

请回复是否有效。我很好奇这是否是问题