除非重新加载页面,否则验证代码的Javascript将出现错误警报

除非重新加载页面,否则验证代码的Javascript将出现错误警报,javascript,jquery,Javascript,Jquery,我有一个页面,我有一堆不同的选择,有人在页面上作出视觉上的选择,当选择得到作出或得到改变,它更新数据在属性上的“保存到收藏夹”按钮。一切都很好,包括数据库中的AJAX post函数,但当我向其中添加验证代码时,如果出现错误,即使在我修复它之后,它也会被错误卡住。我必须重新加载页面,以清除错误,使其正常工作 以下是按钮的php: <div id="saveFavoriteSection"> <div id="">Save Favorite As: <input

我有一个页面,我有一堆不同的选择,有人在页面上作出视觉上的选择,当选择得到作出或得到改变,它更新数据在属性上的“保存到收藏夹”按钮。一切都很好,包括数据库中的AJAX post函数,但当我向其中添加验证代码时,如果出现错误,即使在我修复它之后,它也会被错误卡住。我必须重新加载页面,以清除错误,使其正常工作

以下是按钮的php:

<div id="saveFavoriteSection">
    <div id="">Save Favorite As: <input type="text" id="groupName"></div>
    <div id="addFavButton"><a data-entityid="" data-presid="" data-refid="" data-ref2id="" data-aptid="" data-insid="" data-offerid="" data-offer2id="" data-instxtid="" data-brgid="">Add to Favorites Button</a></div>
</div>
下面是调用按钮函数的侦听函数:

$('#addFavButton').delegate('a', 'click', favButton);
我已经通过填写每个项目和每个警报触发器来测试代码。因此,例如,如果我有意省略“展示卡ID”,则会出现一个警告,提示“请选择展示卡设计”,这是正确的。然后我选择了一个设计(不需要重新加载页面)并再次按下按钮,它会给我同样的错误,即使我已经修复了页面上的错误

这就像它在第一个错误点被卡住了一样,并且不尝试从一开始就运行代码。如果我重新加载页面,选择一种演示卡设计,然后再试一次,效果很好,但我不能让人们来此网站重新加载页面


验证过程中是否缺少一些内容来清除错误并从头开始重新运行函数而不重新加载页面?

我错误地分配了变量。虽然is在大多数情况下都能工作,但由于某种原因,它不允许我在运行验证检查后再次提取数据。我将它们改为attr('data-presid'),而不是data('presid')。因此,通过将变量更改为以下值,现在可以正常工作:

var pres_id = $(this).attr('data-presid');
var ref_id = $(this).attr('data-refid');
var ref2_id = $(this).attr('data-ref2id');
var apt_id = $(this).attr('data-aptid');
var ins_id = $(this).attr('data-insid');
var offer_id = $(this).attr('data-offerid');
var offer2_id = $(this).attr('data-offer2id');
var ins_txt_id = $(this).attr('data-instxtid');
var brg_id = $(this).attr('data-brgid');
var entity_id = $(this).attr('data-entityid');

如果(pres_id)==”{
您有一个额外的右括号。很抱歉,不像代码中那样,修复了页面帖子。如何设置用于验证的不同变量(如“pres_id”、“ref_id”…等)?我假设值不会在更改时更新。它们的设置方式如下:var pres_id=$(this)。数据('presid');在本例中,favButton a是$(this)。在上面的//Assign Variables位置设置这些值。值在favButton下更新(即data presid=“34”)在更改时,但当我再次按下按钮时,它没有拉取或读取数据,并且函数仍将其视为空白。因此,它就像没有再次拉取数据或其他什么。这就是我被卡住的地方。
var pres_id = $(this).attr('data-presid');
var ref_id = $(this).attr('data-refid');
var ref2_id = $(this).attr('data-ref2id');
var apt_id = $(this).attr('data-aptid');
var ins_id = $(this).attr('data-insid');
var offer_id = $(this).attr('data-offerid');
var offer2_id = $(this).attr('data-offer2id');
var ins_txt_id = $(this).attr('data-instxtid');
var brg_id = $(this).attr('data-brgid');
var entity_id = $(this).attr('data-entityid');