Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当rmuboolean和effectivedate(输入日期之后)不为空时,我希望能够看到“displayrmuform”_Javascript - Fatal编程技术网

Javascript 当rmuboolean和effectivedate(输入日期之后)不为空时,我希望能够看到“displayrmuform”

Javascript 当rmuboolean和effectivedate(输入日期之后)不为空时,我希望能够看到“displayrmuform”,javascript,Javascript,代码如下: 从生效日期计算日期后,此函数调用“displayRmuForm”。 它不起作用: var displayRmuForm = function() { var txtEffectiveDate= $get('ctl00_ContentPlaceHolder1_DetailsView1_txtEffectiveDate'); if (!rmuVisible && txtEffectiveDate.value.length > 0 ) {

代码如下: 从生效日期计算日期后,此函数调用“displayRmuForm”。 它不起作用:

var displayRmuForm = function() {
    var txtEffectiveDate= $get('ctl00_ContentPlaceHolder1_DetailsView1_txtEffectiveDate');

    if (!rmuVisible && txtEffectiveDate.value.length > 0 ) {
        $(".container").show(250);

    } else { 
        $(".container").hide(250); 
    }
    rmuVisible = !rmuVisible;
}


var effectiveDate_blur = function(e) {
    var effectiveDate = null;
    if (this.value.length > 0) {
        effectiveDate = new Date(eval('"' + this.value + '"'));
        setRmuDates(effectiveDate);
        displayRmuForm();
    }
}
尝试使用e.target而不是这个

更安全:调用事件处理程序,将“this”的值作为另一个参数传递

免责声明:我不是JS开发人员

请尝试在模糊处理程序中强制rmuVisible为false,如下所示。。。我认为函数正在启动,但是没有满足显示表单的条件

var effectiveDate_blur = function(e) {
    var effectiveDate = null;
    if (this.value.length > 0) {
        effectiveDate = new Date(eval('"' + this.value + '"'));
        setRmuDates(effectiveDate);
        **rmuVisible = false;**
        displayRmuForm();
    }
}

是不是在呼叫你的模糊处理程序?要么调试,要么发出警报什么的


您还没有向我们展示如何将函数连接到事件,因此它可能很简单,浏览器甚至不知道如何调用effectiveDate_blur函数。

您所说的“不工作”是什么意思?如果有,您是否会收到错误,如果是,请列出它。它没有调用“displayRmuForm”-无错误:cf,要对dom事件进行更多的检查。这就是为什么我建议将其作为函数参数传递,例如onclick='effectiveDate\u blur This',然后您就可以正确地基于.value.length。你可以在代码中插入一条语句,看看有什么不对劲,它正在改进,但我仍然需要在页面上额外单击,在“displayRMUForm”上显示日期。有没有办法我不必做额外的点击?谢谢你的意见在用户在“生效日期”字段中输入值之前,禁用您的rmu复选框如何?然后,您可以在复选框上触发检查或单击事件,并弹出表单。他们根本不需要点击复选框。只有在您选择有效日期时暗示“rmu”时,这才有效。如果没有任何要求,我们无法了解您应用程序的业务规则。可能只是禁用复选框,然后在effectiveDate_blur函数中启用它。允许用户单击它并弹出表单。希望这有帮助。