繁体   English   中英

页面刷新或重新加载后Java代码未运行

[英]Javascript code not running after the page is refreshed or reloaded

我有一个JavaScript代码,每当选中此复选框时,都会重新加载我的当前页面,然后将某些输入字段显示为灰色。

但是,仅在重新加载页面时才执行重新加载,输入字段永远不会变灰。

$(document).ready(function(){
    $("#storePickUp").on("click", function () {
if ($(this).is(":checked")) {
document.getElementById("shippingForm").submit();   
document.getElementById("shippingAdress").disabled = true;
document.getElementById("shippingState").disabled = true;
document.getElementById("shippingCity").disabled = true;
document.getElementById("shippingZip").disabled = true;
document.getElementById("shippingZipCode").disabled = true;
document.getElementById("shippingButton").disabled = true;
}
});
    });

因此,在第四行中调用.submit()...的代码中,除非您没有在页面上显示一些额外的魔术,否则此行将继续将表单发布/获取到您在其中配置的网址那种形式。

这意味着下面的行根本没有关系,因为它们不会在表单目标页面上执行。

要解决此问题,如果您确实需要中间的表单发布,则需要发布到特定的url,并使用该url作为页面加载时的触发器来禁用这些元素。 不是直接在单击之后,而是在表单的目标新加载的页面上...有意义吗?

我认为这是因为仅当您单击#storePickUp时才禁用它们,但是如果重新加载页面,它将重置。

方法submit执行,页面重新加载,代码后submit从不执行。 即使将执行该代码,页面刷新也会使所有更改无效。

您可能应该使用ajax提交,而不是使用submit方法。 如果您使用的是jQuery,它将使您更轻松:

http://api.jquery.com/category/ajax/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM