jquery - 在 div 选择后使用 Ajax 和 Jquery 更新其他 div
问题描述
我想在选择某个 Div 后更新 div。实际上我在 Laravel(php) 中查询我的结果并且 AJAX 正在请求。我试图更新 div 但没有成功。在这种情况下选择药物后价格应该自动加载到它的 div 中。还有一些工作要做,但是这方面的指南可以帮助我。
<div class="form-group {{ $errors->has('drugid') ? ' has-error' : '' }}">
<label class="col-sm-2 control-label">Item Name <span class="highlight-text"> *</span>:</label>
<div class="col-sm-10">
<select id="drugid" name="drugid" class="form-control select2" data-placeholder="Select Item..">
<option value="{{old('drugid')}}">{{old('drugid')}}</option>
<!-- @foreach($drugs as $pdrugz)
<option value="{{$pdrugz->id}}"> {{$pdrugz->drug_name }} - {{$pdrugz->refno }}</option>
@endforeach -->
<?php
DB::table('med_drugs')->where('cur_bal', '>',0)->where('archieved_status','=',null)->orwhere('archieved_status','!=','Yes')->orderBy('id')->chunk(10000, function ($drugs) {
foreach ($drugs as $pdrugz) {
?>
<option value="{{$pdrugz->id}}"> {{$pdrugz->drug_name }} - {{$pdrugz->bar_code_number }} - [ Stock: {{$pdrugz->cur_bal }} ] - [ Price: {{$pdrugz->current_sp }} ]</option>
<?php }
});?>
</select>
@if ($errors->has('drugid'))
<span class="help-block">
<strong>{{ $errors->first('drugid') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group {{ $errors->has('current_sp') ? ' has-error' : '' }}">
<label class="col-sm-2 control-label">Price <span class="highlight-text"> *</span>: </label>
<div class="col-sm-10">
<input readonly type="text" id="price" name="price[]" value="" class="form-control price"/>
@if ($errors->has('current_sp'))
<span class="help-block">
<strong>{{ $errors->first('current_sp') }}</strong>
</span>
@endif
</div>
</div>
Ajax 和 Jquery 调用
$('#div').on('#drugid','change',function(){
var classes = $(this).parent().closest('div').attr('class').split(' ');
var $div = $(this).parent().attr('class');
var id = $(this).closest('div').find('.drugid').val();
var dataId={'id':id};
$.ajax({
type : 'GET',
url : '{!!URL::route('findPrice')!!}',
dataType: 'json',
data : dataId,
success:function(data){
//check promotion
var varDate = new Date(data.promo_endate); //dd-mm-YYYY
var today = new Date();
today.setHours(0,0,0,0);
if(data.promo_status == 'Active' && varDate >= today){
alert($(this).parents('.form-group').parent('div').find('.price').val());
}
else{
alert($(this).parents('.form-group').parent('div').find('.price').val(current_sp));
}
}
});
});
解决方案
没有 id 为 div (id="div") 的元素。但是您正在尝试选择一个元素id="div"
使用$("#div")
既然你想听
试试这个代码change
:#drugid
$("#drugid").change(function(){
// Your code here
});
希望这对您有所帮助。:) 快乐编码
推荐阅读
- matlab - matlab中的多个垂直直方图
- reactjs - 用 Enzyme 和 Jest 测试 React15
- php - 从codeignitor 3中的一行计算并显示结果
- c - 简单的 C 登录表单问题
- jquery - 如何使用 document.write 重写谷歌编译器警告
- php - php table 根据用户输入自动填充行
- twilio - Twilio:接听在打开浏览器之前开始的来电
- c++ - 将指向对象的指针声明为类成员对象的参数
- javascript - Firebase 函数不记录“console.log()”语句
- directory - 删除包含所有对象版本的 Google Storage 文件夹