Javascript 如何修复此错误?未定义
我有以下代码: HTML:Javascript 如何修复此错误?未定义,javascript,jquery,html,Javascript,Jquery,Html,我有以下代码: HTML: <form method="post" action="<?php echo $this->serverUrl().str_replace('public','',$this->basePath()).'/user/sendmessagetoinbox/'; ?>"> <fieldset> <label>Subject</label> <input
<form method="post" action="<?php echo $this->serverUrl().str_replace('public','',$this->basePath()).'/user/sendmessagetoinbox/'; ?>">
<fieldset>
<label>Subject</label>
<input type="text" name="inbox_subject" />
</fieldset>
<fieldset>
<label>Message</label>
<textarea name="inbox_message"></textarea>
</fieldset>
<fieldset>
<button type="submit" class="btn btn-primary btn-save send-btn">Send message to inbox</button>
<!-- <input type="submit" class="btn btn-submit" value="Send message to inbox" /> -->
</fieldset>
<input type="hidden" value="" name="patient-id" />
</form>
$('#inMail').on('show.bs.modal', function (event) {
var url='<?php echo $this->serverUrl().str_replace('public','',$this->basePath()).'/user/sendmessagetoinbox/'; ?>';
console.log(url);
var pId = $(event.relatedTarget).data('patientId')
console.log(pId); //UNDEFINED
$(".modal-body").find('form').attr("action",url+pId);
})
您能检查一下这个吗
var pId=$(event.relatedTarget).data('patientId')代码>
尝试替换为
var pId=$(event.relatedTarget).data('patient-id')代码>
我认为这都是关于表单名称属性的尝试在put标签中添加id=“patient id”:
<input type="hidden" value="" id="patient-id" name="patient-id" />
哪个元素是event.relatedTarget
使用此$(“[name='patient-id']”)。val()获取患者id我认为$(event.relatedTarget)
是未定义的,您可以详细说明吗?1) 你期待什么样的行为?2) 你看到了什么行为?3) 有任何控制台输出吗?没有,在jQuery中,它同时适用于camelCase和hyphenated。(在纯JS中,它必须是camelCaseselectedElement.dataset.patientId
)也没有属性为data patient id
的元素,所以这永远不可能工作为什么不按照@Cyril在注释中建议的那样,只针对属性为name
的选择器呢
var pId = $('#patient-id').val();