I have the following form with a file input which needs to be activated depending on the result of an Ajax Call.
<form id="checkin_form" enctype="multipart/form-data" method="post" style="visibility:hidden;">
<input type="file" name="file[]" id="checkinfile"><br>
</form>
The javascript function which will trigger the click funtion is:
function clickCheckInFile()
{
var file_index = selected_file.id;
var file_name = $(selected_file).children('td:nth(1)').text();
$.ajax({
url: "scripts/check_file.php",
type: "POST",
dataType:'json',
data: {file_index: file_index, file_name: file_name},
success: function(data){
if (data['response'] == 200)
{
if (data['type'] != "dir")
{
if (data['checked_out'] == 1 || data['checked_out'] == "1")
{
if (data['checked_out_by'] == username)
{
if (data['user_permissions'][1] == 1)
{
$('#checkinfile').click();
}
else
{
alert('Access Denied.');
}
}
else
{
alert('Access Denied');
}
}
else
{
alert('File is not checked out.');
}
}
else
{
alert('Cannot check out a folder');
}
}
else if (data['response'] == 300)
{
alert(data['message']);
}
else
{
handleAjaxResponse(data['response']);
}
}});
}
The line not working is the $('#checkinfile').click(); portion. I can put an alert message that triggers in that spot so the code is calling that line. When I move the click to prior to the ajax call it works fine.