1、删除行JS
//清除明细表
function delete_mx_0() {
var k = 0;
//选中要删除的明细行
jQuery("input[name^='check_node']").each(function () {
jQuery(this).click();
k = k + 1;
});
if (k > 0) {
//删除对应的明细
//这里使用的是第一个明细按钮调用的方法deleteRow0
deleteRow0(0,true);
}
}
2、新增行JS
jQuery(document).ready(function () {
window.onload = function () {
//绑定值变更事件
jQuery('#field7315').bindPropertyChange(function () {
delete_mx_0();
var data = RequestWebService();
for(var i in data.ProjectListStage){
//遍历ProjectListStage数组时,会出现非数值的index
//原因未知
if(isNaN(i)){continue;
}
addRow0(i);
//插入找到的明细行
jQuery("input[id^='field7255_']").each(function (k,element) {
if(k==i){
jQuery(element).val(data.ProjectListStage[i].Seqn)
}
});
jQuery("input[id^='field7256_']").each(function (k,element) {
if(k==i){
jQuery(element).val(data.ProjectListStage[i].ProjStage);
}
});
}
});
}
//获取明细数据,通过调用api接口返回json数据
//这里使用的是webservice
function RequestWebService() {
var data;
jQuery.ajax({
type: "get",
async:false,
url: "http://localhost:26819/AXWebService.asmx/GetProjectListStage?projno=" + jQuery('#field7315').val(),
dataType: "json",
success: function(result){
if(result.ret == "true"){
data = result.msg;
}
},
});
return data;
}
});
3、C# webservice配置
[WebMethod(Description = "获取ProjectListStage(JSON)")]
public void GetProjectListStage(string projno)
{
//跨域设置
Context.Response.AddHeader("Access-Control-Allow-Origin", "*");
//......
//返回json
Context.Response.Write(ret);
Context.Response.End();
}
//web.config设置
<system.web>
<webServices>
<protocols>
<add name="HttpPost" />
<add name="HttpGet" />
</protocols>
</webServices>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<directoryBrowse enabled="false" />
</system.webServer>