我是javascript的新手,代码只是从我的老年人那里复制而来。问题是,当我从gridview单击Edit链接时,它不会更改为Update Cancel。这是脚本代码。
<script type="text/javascript">
$(document).ready(function () {
$(':checkbox').change(function () {
if ($(this).is(":checked")) {
$(this).val('1');
} else {
$(this).val('0');
}
});
$("[id^=txtNumberVal]").bind("keypress", function (e) {
var keyCode = e.which ? e.which : e.keyCode
var chars = String.fromCharCode(keyCode);
var intRegex = '[-+]?([0-9]*.[0-9]+|[0-9]+)';
if (!chars.match(intRegex)) {
alert('Please enter a valid number');
return false;
}
});
});
function editClick(i, e, v) {
$(document).ready(function () {
var id = 0;
$("#<%=dgRule.ClientID%> tr").each(function () {
//alert($(this).find("td:eq(5) input[type=hidden]").val());
id = $(this).find("td:eq(5) input[type=hidden]").val();
$("#Edit" + id).show();
$("#Update" + id).hide();
$("#Cancel" + id).hide();
if ((i == id) && (e == "E")) {
if (v == "1") {
$("#numberVal" + id).hide();
$("#txtNumberVal" + id).show();
} else if (v == "2") {
$("#chkBoolVal" + id).removeAttr('disabled');
} else if (v == "4") {
$("#charVal" + id).hide();
$("#txtCharVal" + id).show();
}
} else {
$("#numberVal" + id).show();
$("#txtNumberVal" + id).hide();
$("#chkBoolVal" + id).attr('disabled', 'disabled');
$("#charVal" + id).show();
$("#txtCharVal" + id).hide();
}
});
});
if (e == "U") {
$.ajax({
type: "post",
url: "EditPasswordRule.aspx/UpdatePwdRule",
data: "{ numberVal: '" + $("#txtNumberVal" + i).val() + "', boolVal: '" + $("#chkBoolVal" + i).val() + "', charVal: '" + $("#txtCharVal" + i).val() + "', ruleID: '" + i + "' }",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (result) {
$("#numberVal" + i).text(parseFloat($("#txtNumberVal" + i).val()).toFixed(2));
$("#charVal" + i).text($("#txtCharVal" + i).val());
alert(result.d);
},
error: function (xhr, status, error) {
alert(error);
return false;
}
});
}
else if (e == "E") {
$("#txtNumberVal" + i).val(parseFloat($("#numberVal" + i).text()).toFixed(2));
$("#txtCharVal" + i).val($("#charVal" + i).text());
if ($("#chkBoolVal" + i).is(":checked")) {
$("#boolVal" + i).val('1');
} else {
$("#boolVal" + i).val('0');
}
$("#Edit" + i).hide();
$("#Update" + i).show();
$("#Cancel" + i).show();
} else if (e == "C") {
if ($("#boolVal" + i).val() == "1") {
$("#chkBoolVal" + i).prop('checked', true);
} else {
$("#chkBoolVal" + i).prop('checked', false);
}
$("#Edit" + i).show();
$("#Update" + i).hide();
$("#Cancel" + i).hide();
}
}
</script>
gridview包含:
<a id="Edit<%# Eval("rule_id") %>" href="#" onclick="editClick('<%# Eval("rule_id") %>', 'E', '<%# Eval("val") %>'); return false;">Edit</a>
<a id="Update<%# Eval("rule_id") %>" href="#" onclick="editClick('<%# Eval("rule_id") %>', 'U', '<%# Eval("val") %>'); return false;" hidden="true">Update</a>
<a id="Cancel<%# Eval("rule_id") %>" href="#" onclick="editClick('<%# Eval("rule_id") %>', 'C', '<%# Eval("val") %>'); return false;" hidden="true">Cancel</a>
<input id="_id" type="hidden" value="<%# Eval("rule_id") %>" />
答案 0 :(得分:2)
没关系。我只需要将以下代码添加到我的网站管理员。
<script src="../Scripts/jquery-1.11.1.js" type="text/javascript"></script>