1

我目前正在尝试填写表格中的一些字段。我正在做一个测试 ifextnReasonextnDtare null,我什么也不做。但由于某种原因,它不断输入支票并用 加载我的字段null,这是我不想要的。

function preloadFields() {

//these values are coming in as null
var extnReason = '<%=extnReason%>';
var extnDt = '<%=extnDt%>';

//set Extension Date blank on load
$('#extnDt').val("");

alert("reason ++++ " + extnReason);
alert("extnDt ++++ " + extnDt);

//it is entering these tests but I don't want them to
if(extnReason != null || extnReason != "null"){ 
    console.log("entered reason");
    $('#extnReason').val(extnReason);
}

if(extnDt != null || extnDt != "null") {
    console.log("entered extnDt");
    $('#extnDt').val(extnDt);
}

}

任何帮助将不胜感激!

4

1 回答 1

2

你需要

if(extnReason != null && extnReason != "null")

代替

if(extnReason != null || extnReason != "null")

因为 ifextnReason'null'第一个条件'null' != null将返回true,所以 OR 检查将评估为true并因此输入设置您的值的代码块。

其他if条件相同...

预加载字段的替代方法:您也可以只设置value输入标签的属性而不是使用preloadFields?即类似的东西:

 <input type="text" id="extnDt" value="${extnDt != null ? extnDt : ''}" />
于 2013-02-28T01:57:26.833 回答