我知道这有点模糊,但我无法链接到我的代码示例。
我有一个用html / jquery编写的应用程序。当我在FireFox和IE的本地机器上运行它时,它工作正常。问题是,当我把它放在我们的服务器上时,我在IE中的应用程序的一部分失去了功能。它在FF中工作正常。
它正在失去选择框上的功能,该选择框会在更改时执行某些操作。
我确信它必须是某种引用问题,但是其中对该函数的其他调用工作正常。此外,我已将该函数移动到同一文件,以查看它是否以某种方式错过了引用文件中的函数,但这也无效。
有没有人偶然发现我可以试着让它发挥作用?
以下是选择框和功能的代码:
<select id="POCreateDateRange" class="valid" name="dynamicStartRange" onchange="onDateRangeChange("POCreateDate", 'Range')">
<option value=""></option>
<option value="lastMonth">Last Month</option>
<option value="lastTwoWeeks">Last Two Weeks</option>
<option value="lastWeek">Last Week</option>
<option value="yesterday">Yesterday</option>
<option value="today">Today</option>
</select>
函数的代码:
function onDateRangeChange(id, type)
{
var targetId = "#";
if(type == "Range")
{
targetId += id;
} else {
targetId += (id+"toDate");
}
var currentDropDown = "#" + id + type;
var selectedOption = $(currentDropDown).val();
// to ajax call here..
$.ajax({
url: "PATH_REMOVED",
type: "GET",
dataType: "xml",
data: "RandomNumber=" + Math.round() + "&dateParam=" + selectedOption,
success: function (xml) {
var date = $(xml).find("dateString").text();
var targetDateValue = (date==null||date=="")?$(targetId).val():date;
$(targetId).val(targetDateValue);
},
error: function (text) {
alert("Something blew up.");
}
});
}
我会尝试为您提供更多详细信息。
提前致谢!
修改的 所以我在IE开发工具中更改为单引号并且它有效。所以我对代码进行了更改,然后部署了它。但它仍然无法奏效。我打开IE开发工具并将其变回双引号,它确实有效。有任何想法吗?
答案 0 :(得分:3)
双引号内有双引号。
将onchange
更改为此:
onchange="onDateRangeChange('POCreateDate', 'Range')"
或者你可以这样做:
onchange="onDateRangeChange(\"POCreateDate\", 'Range')"
答案 1 :(得分:2)
这些双引号不应该是单引号吗?
onchange="onDateRangeChange("POCreateDate", 'Range')"
必须是
onchange="onDateRangeChange('POCreateDate', 'Range')"