如何使用jquery刷新php中的特定元素?
我有一个选择框。在它发生更改事件时,我调用确认框。当我点击“取消”按钮时,该值保持不变。 所以我只想刷新选择框而不是整个页面如何使用jquery刷新php中的特定元素?,php,jquery,ajax,Php,Jquery,Ajax,我有一个选择框。在它发生更改事件时,我调用确认框。当我点击“取消”按钮时,该值保持不变。 所以我只想刷新选择框而不是整个页面 function statusChanged(obj,id){ $(obj).change(function() { var answer = confirm ("Are you sure update Status?"); var status; if(answer){ status=$(t
function statusChanged(obj,id){
$(obj).change(function() {
var answer = confirm ("Are you sure update Status?");
var status;
if(answer){
status=$(this).val();
//alert(status);
ajaxUpdate("service-providers.php", {action:"updatestatus",'status': status,'id':id}, function(data) {
if(data.type=="success") {
$("#notify").notification({caption:"Status Updated Successfully.", type:"information", sticky:false ,onhide:function(){
window.location="service-providers.php";
}
});
}
});
}
else{
// here i want to refresh select box
}
});
}
html代码:
<select id="status1" name="status1" style="width:140px;" onChange="statusChanged(this,<?php echo $applicationid; ?>);">
<?php
if($status==3 || $status==4)
echo "<option value='4'>Submitted</option>";
else
echo "<option value='0'>Select</option>";
?>
<option value="2" <?php if($status==2) echo "selected='selected'"; ?> >Approved</option>
<option value="3" <?php if($status==3) echo "selected='selected'"; ?> >Rejected</option>
</select>
在下面使用此代码,否则只会重置选择框 这会奏效的
$('#SELECTBOX_ID').prop('selectedIndex',0);
请参阅工作演示
另外,我在本地实现了这段代码,我主要做了两个更改,我从select中删除了onchange,第二个更改是我没有使用ajax,因为您只想在确认框中单击取消按钮
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
jQuery(document).ready(function () {
jQuery("#status1").change(function() {
var answer = confirm ("Are you sure update Status?");
var status;
if(answer){
status=$(this).val();
//I have did not call ajax
}
else{
jQuery('#status1').prop('selectedIndex',0);
}
});
});
</script>
<?php
$status = 0; // I temporary added t
?>
<select id="status1" name="status1" style="width:140px;" >
<?php
if($status==3 || $status==4)
echo "<option value='4'>Submitted</option>";
else
echo "<option value='0'>Select</option>";
?>
<option value="2" <?php if($status==2) echo "selected='selected'"; ?> >Approved</option>
<option value="3" <?php if($status==3) echo "selected='selected'"; ?> >Rejected</option>
</select>
页面加载完成后:
$('select').each(function() {
$(this).attr('original_data', $(this).val());
});
在你的功能中
$(this).val(this.attr('original_data'));
检查过了。非常好用。你看到演示了吗?如果没有,请发布你的selectboxNo的html代码。它将设置第一个选项,而不是加载页面的选项。检查一下你自己。您的代码,但包含所选元素:他希望执行与您在表单$'form'上所做的完全相同的思考。重置,但仅在指定元素上执行。好的,让我在本地尝试上述问题场景,并尽快向您更新结果。好的。我在当地试过,效果不错。首先保存所选数据,这不必是“选择”-可以是所有输入,也可以是指定的输入,并将其保存为自定义属性。然后,只要在需要时检索此数据:]