我已經在應用服務提供商laravel5.5項目 我分享了這樣與js文件共享變量laravel
public function boot()
{
View::share('path', 'laravel/public');
}
一些變量,我可以在每個視圖刀片非常伊斯利訪問它.. 但我有AJAX搜索 和來自saparated js文件包括在主佈局
<script src="{{ asset('style//js/searchajax.js')}}"></script>
,這是searchajax.js代碼
var path = '/laravel/public/';
$("#userSearchAjax").bind('change keyup',function(){
var userSearchAjax = $(this).val().trim();
if(userSearchAjax != '')
{
$.ajax({
type:'GET',
url: '/laravel/public/userssearchajax',
data: {userSearchAjax:userSearchAjax},
success:function(data){
var result = "<tr class='info'><td>اسم المستخدم</td><td>الصورة</td></td><td>البريد الالكتروني</td></td><td>رقم الهاتف</td></td><td>الفرع</td></td><td>اعدادات</td></tr>";
for(i = 0;i<data.length;i++)
{
result+= "<tr class='warning'><td>"+data[i]['user_name']+"</td>";
result+= "<td>";
result += "<a data-title='"+data[i]['user_name']+"' data-lightbox='image-1' target='_blank' href='"+path+"uploads/users/"+data[i]['id']+"/"+data[i]['id']+".jpg'><img alt='"+data[i]['user_name']+"' title='"+data[i]['user_name']+"' src='"+path+"/uploads/users/"+data[i]['id']+"/"+data[i]['id']+".jpg' class='thumb' /><br /></a>";
result+= "</td>";
result+= "<td>"+data[i]['user_email']+"</td>";
result+= "<td>"+data[i]['user_phone']+"</td>";
result+= "<td>"+data[i]['user_department']+"</td>";
result+= "<td><a class='btn btn-success'>عرض</a>";
result+= "<a class='btn btn-info'>تعديل</a></td></tr>";
}
result += "";
$("#search-result").html(result);
}
});
}
else
{
$("#search-result").html("");
}
})
我的問題,這是我不能訪問內js文件 像laravel驗證和粥的默認模式,甚至共享模式的共享變量$ PATH我不能訪問他們的JS裏面文件 感謝
Laravel是服務器端代碼,js是客戶端代碼。你不能在客戶端共享使用JS代碼編寫的PHP語法的服務器端代碼......它們是兩個完全獨立的實體。如果需要,可以使用服務器端的PHP或者使用Blade模板語言將代碼插入佈局文件JS腳本中。 – Andy